VBA로 그려진 모양 (세 개의 원으로 구성된 신호등)의 색을 업데이트하는 사용자 정의 함수가 있습니다. 워크 시트 셀의 호출은 어떻게 든 다음과 같이 보입니다.Excel 사용자 정의 함수가 셀 업데이트에 호출되지 않았습니다.
setTrafficLight(A1, "Oval 1", "Oval 2", "Oval 3")
여기서 A1은 예를 들어. "녹색"또는 "빨간색". 다른 매개 변수는 도형의 이름입니다.
Excel에서 사용자 정의 함수를 호출하면 이전 실행 취소 항목을 사용하지 않도록 설정하여 함수가 호출되고 실행 취소 기록이 삭제되는 문제가있었습니다. 함수가 시트 변경에 값마다 호출되지 않도록이 문제를 해결하려면, 내 setTrafficLight 기능에서
Application.OnUndo "Undo SetTrafficLight", "undoSetTrafficLight"
를 통해 빈 실행 취소 기능을 등록은
Application.Volatile
는
False
로 설정됩니다. 그러나 이제 A1의 입력 값이 변경 될 때 함수가 호출되지 않습니다.
Application.Volatile = True
으로 작동하지만 실행 취소가 제대로 작동하지 않습니다.
Application.Volatile
을 완전히 제거하면 업데이트가 올바르게 작동하지만 한 단계의 실행 취소 만 사용할 수 있습니다.
이 문제를 해결하는 방법에 대한 아이디어가 있으십니까?
조정할 수있다이 질문은 http://www.stackoverflow.com –