2014-01-25 3 views
0

이 질문은 Excel 2003의 VB와 관련이 있습니다. Excel 워크 북은 VB 매크로를 참조합니다. 그리고,이 매크로는 여러 사용자 폼을 가지고 있습니다. 양식 중 하나에 새 확인란 컨트롤을 추가했습니다. 문제는 여기에서 새 체크 박스에 액세스하려고 할 때1004 확인란에 액세스 할 때 런타임 오류

ActiveWorkSheet.DialogSheet("Options").EdBox("CheckBox1").Text 

내게 1004 런타임 오류가 발생합니다. 내 머리가 왜 근본 원인을 찾을 수 없는지 궁금해하고 있습니다. 아무런 문제없이 액세스 할 수있는 기존의 확인란이 이미 있습니다. 어떤 도움이라도 대단히 감사합니다.

코드에서 액세스하려면 새 CheckBox의 속성을 설정해야합니까?

+0

엑셀 스프레드 시트의 사용자 정의 양식에있는 체크 박스가 켜져 있습니까? 그리고 텍스트가 맞는지 편집하는 중입니다. –

+0

Alex D, 사용자 정의 폼이 매크로 정의에 있고 내 Excel이이 매크로를 참조합니다. 기본 "CheckBox1"이름을 사용하여 VB 코드에서 액세스하여 작동하는지 확인합니다. 하지만 그렇지 않습니다. –

+0

DialogSheet 또는 userform을 실제로 사용하고 있습니까? 이전 Excel 95 일 이후 DialogSheet를 보지 못했지만 아직 지원되고 있음을 알고 있습니다. –

답변

1

당신은

모든 기존의 체크 박스가 DialogSheet 클래스의 .EdBox 방법을 통해 액세스되는 말했다 그래서 논리적으로 1004 오류가 더 .DialogSheet("Options") 또는 전혀 .EdBox("CheckBox1")가 존재하지 않습니다 때문이다

- 대부분의 아마도 후자 일 것이다. 직접 실행 창에서

입력 :

?ActiveWorksheet.DialogSheet("Options").EdBox("CheckBox1").Name 

을하고 오류를 팝업되는지 확인합니다. 그럴 경우 추가 한 CheckBox의 실제 이름을 '속성'을 통해 찾아야합니다. 양식에 다른 CheckBox가있는 경우 추가 한 확인란의 이름이 CheckBox1이 아니기도합니다.