책 내용 질문하기
기출 3-1번 문제
도서
2026 한 권으로 끝내는 시나공 컴활 1급 필기+실기 (컴퓨터활용능력 1급)
페이지
124
조회수
79
작성일
2026-08-26
작성자
오*임
첨부파일
1번 목록 추가 프로시저 작성하고 나서 사진같이 오류가 뜨는데 왜 그런건가요?

답변
2026-08-27 09:52:41
안녕하세요.
오류 원인은 AddItem 뒤에 =을 넣었기 때문입니다.
현재 작성:
cmb지역명.AddItem = "마포구"AddItem은 값을 대입하는 속성이 아니라 목록에 항목을 추가하는 메서드이므로 = 없이 작성해야 합니다.
다음과 같이 모두 수정하세요.
Private Sub UserForm_Initialize()
cmb지역명.AddItem "마포구"
cmb지역명.AddItem "은평구"
cmb지역명.AddItem "서대문구"
cmb지역명.AddItem "종로구"
End Sub따라서 표시된
컴파일 오류입니다: 함수 또는 변수가 필요합니다
라는 메시지는 VBA가 AddItem을 =으로 값을 대입할 함수나 변수처럼 해석하려 했기 때문에 발생한 것입니다.
또한 프로시저 이름 UserForm_Initialize()는 올바르게 작성되어 있습니다. 위와 같이 =만 제거하면 사용자 폼이 열릴 때 콤보 상자에 네 개 지역명이 추가됩니다.
즐거운 하루 되세요.
-
관리자2026-08-27 09:52:41
안녕하세요.
오류 원인은
AddItem뒤에=을 넣었기 때문입니다.현재 작성:
cmb지역명.AddItem = "마포구"AddItem은 값을 대입하는 속성이 아니라 목록에 항목을 추가하는 메서드이므로=없이 작성해야 합니다.다음과 같이 모두 수정하세요.
Private Sub UserForm_Initialize() cmb지역명.AddItem "마포구" cmb지역명.AddItem "은평구" cmb지역명.AddItem "서대문구" cmb지역명.AddItem "종로구" End Sub따라서 표시된
컴파일 오류입니다: 함수 또는 변수가 필요합니다
라는 메시지는 VBA가
AddItem을=으로 값을 대입할 함수나 변수처럼 해석하려 했기 때문에 발생한 것입니다.또한 프로시저 이름
UserForm_Initialize()는 올바르게 작성되어 있습니다. 위와 같이=만 제거하면 사용자 폼이 열릴 때 콤보 상자에 네 개 지역명이 추가됩니다.즐거운 하루 되세요.