책 내용 질문하기
'IsNull(lst과목.Value)' 와 'lst과목.Value =
도서
2023 시나공 컴퓨터활용능력 1급 실기
페이지
265
조회수
102
작성일
2023-01-18
작성자
강*우
첨부파일

본 교재 1권 '스프레드시트 실무'의 섹션18 프로시저 작성 파트의 기출문제 4번의 2를 푸는 과정 중,

'목록 상자(lst과목)에서 과목을 선택하지 않았으면 'ID(txtID)' 컨트롤에 '선택안함'을 표시한 후, 목록 상자(lst과목)의 첫 번째 항목을 선택하시오.'를 프로시저로 작성할 때,

 

저는

'If lst과목.Value="" Then txtID.Value="선택안함" lst과목.Listindex=0~' 으로 작성했고,

 

256 페이지의 해설에는

'If IsNull(lst과목.Value) Then lst과목.Listindex=0' txtID.Value="선택안함"~' 으로 작성되어 있습니다.

 

제 생각에 lst과목.Value="" IsNull(lst과목.Value)는 동일한 것 같은데,

제 방식대로 작성하면 오류가 발생하고, 해설대로 작성하면 정상적으로 프로시저가 작동합니다.

 

왜 그런가요?

 

답변
2023-01-19 15:03:02

단순한 컨트롤이 아니라 바운드된 필드로 참조할 때,
필드의 초기값은 Null이므로 값을 입력하지 않은 것은 IsNull로 검사합니다.

IsNull( )은 유효한 데이터를 전혀 포함하지 않으면 참(True)을, 포함하면 거짓(False)을 반환하는 함수입니다.
주로 목록상자에서 사용됩니다.

엑셀에서 컨트롤에 등록된 내용을 바로 확인하기 위해서는 txt이름 = "" 와 같이 사용합니다.

 
어떻게 작성하시든 코드가 정상실행되어 정확한 결과가 나온다면 상관 없습니다.

실제 시험에서 지시사항에 별다른 설명이 없었다면 둘중 어느것을 사용하시든 정확한 결과가 나오면 정답으로 인정될 것 입니다.

 

 

좋은 하루 보내세요. 

  • 관리자
    2023-01-19 15:03:02

    단순한 컨트롤이 아니라 바운드된 필드로 참조할 때,
    필드의 초기값은 Null이므로 값을 입력하지 않은 것은 IsNull로 검사합니다.

    IsNull( )은 유효한 데이터를 전혀 포함하지 않으면 참(True)을, 포함하면 거짓(False)을 반환하는 함수입니다.
    주로 목록상자에서 사용됩니다.

    엑셀에서 컨트롤에 등록된 내용을 바로 확인하기 위해서는 txt이름 = "" 와 같이 사용합니다.

     
    어떻게 작성하시든 코드가 정상실행되어 정확한 결과가 나온다면 상관 없습니다.

    실제 시험에서 지시사항에 별다른 설명이 없었다면 둘중 어느것을 사용하시든 정확한 결과가 나오면 정답으로 인정될 것 입니다.

     

     

    좋은 하루 보내세요. 

· 5MB 이하의 zip, 문서, 이미지 파일만 가능합니다.
· 폭언, 욕설, 비방 등은 관리자에 의해 경고없이 삭제됩니다.