Excel에서 VBA의 userform에 두 개의 다중 선택 목록 상자가 있습니다.VBA에서 (Excel에서) 프로그래밍 방식으로 변경하는 목록 상자와 클릭 할 때를 구분하는 것
하나는 국가를 포함하고 다른 하나는 도시를 포함합니다.
사용자가 국가를 클릭하고 선택/선택 해제하면 두 번째 목록 상자에서 해당 국가에있는 모든 도시를 자동으로 선택/선택 취소합니다.
마찬가지로 사용자가 도시를 클릭하고 선택/선택 취소하면 첫 번째 목록 상자가 자동으로 업데이트되어 모든 해당 도시가 현재 선택된 국가 만 강조 표시됩니다.
내 문제는 다음과 같습니다
OnChange 이벤트를 사용하여 (의 OnClick 다중 선택리스트 박스와 함께 사용할 수 없습니다), 때마다 두 목록 상자가 변경 될 때, 그것은 다른 변경됩니다.
이 문맥에서 이것은 국가가 변경 될 때마다 두 번째 목록 상자에서 모든 해당 도시를 변경한다는 것을 의미합니다. 각 국가별로 사용자는 모든 도시를 선택하거나 실제로 선택하지 않습니다.
목록 상자가 사용자 또는 스크립트에 의해 변경되는지 여부를 알려주고 있습니까? 그렇지 않다면 내 목표를 달성 할 수있는 대체 방법이 존재합니까?
읽어 주셔서 감사합니다.
사용'Application.EnableEvents = FALSE '일시적으로 해제하는 방법 OnChange, 변경 한 다음 다시 True로 설정하십시오. 이렇게하면 편집 작업을 수행하는 동안 다른 OnChange 이벤트가 트리거되지 않습니다. – Mikegrann
'Application.EnableEvents = False'는 UserForm 이벤트에 영향을 미치지 않습니다. – cyboashu