본문 바로가기
미분류

Access에서 NULL인지 확인하는 코드...

by llll시간여행llll 2021. 12. 1.

분명 isnull이걸 사용하는건 기억하고 있었는데 함수 사용법을 잊어 먹어서 결정적인 순간에 써먹지 못하고 기록으로 남긴다....

컴퓨터활용능력1급 실기에서 출력단추를 누르면 조회날짜에 해당하는 대여현항 보고서가 출력되어야 하는데,, 

수강생들이 "시작일"과 "종료일"을 입력하지 않고 출력을 누르는 바람에 아래와 같은 오류가 발생했다.

위 오류를 해결하기 위한 코드를 작성하다 NULL값 처리를 하지 못해 방법만 알려주고 다음 과정으로..

아쉬움을 남기며 .... 아래 코드,,,,

 

Private Sub cmd출력_Click()
 
If IsNull(Me.txt시작일) Or IsNull(Me.txt종료일) Then
   MsgBox "시작일과 종료일을 입력하시요"
Else
   DoCmd.OpenReport "대여목록", acViewPreview, , "대여일자 >= #" & _
    Me.txt시작일 & "#  and  대여일자 <= #" & Me.txt종료일 & "#"
End If
End Sub

 

IsNull 함수

Microsoft 365용 Access Access 2021 Access 2019 Access 2016 Access 2013 자세히...

유효한 데이터(Null) 식 여부를 나타내는 부울 값을 반환합니다.

구문

IsNull(식)

필수 인수 은 를 포함하는 변형 숫자 식문자열 식.

주의

IsNull은 식이 Null이면 True를 반환합니다. 그렇지 않으면 IsNull이 False 를 반환합니다.식이 두 개 이상의 변수 구성 변수의 Null로 구성되는 경우 True는 전체 식에 대해 반환됩니다.

Null 값은 Variant에 유효한 데이터가 없음을 나타냅니다. Null은 변수가 아직 초기화되지 않았 비어 있음 를 나타냅니다. 길이가 0인 문자열("")은 null 문자열이라고도 합니다.

중요:  IsNull 함수를 사용하여 식에 Null 값이 포함되어 있는지 여부를 판단합니다. 일부 상황에서 True로 평가할 수 있는 식(예: If Var = Null  If Var <> Null은 항상 False입니다. N ull을 포함하는 모든 식이 자체Null이기 때문에 False이기 때문이다.

쿼리 예제

결과
SELECT ProductID, isNull(할인) AS Expr1 FROM ProductSales; 필드 "ProductID"에서 값을 반환하고 필드 "할인"의 값이 Null인지 평가하고 Expr1 열에서 -1(True) 및 0(False)을 반환합니다.
SELECT ProductID, isNull(할인) AS NullStatus FROM ProductSales; 필드 "ProductID"에서 값을 반환하고, 필드 "할인"의 값이 Null인지 평가하고 NullStatus 열에서 -1(True) 및 0(False)을 반환합니다.

VBA 예제

참고: VBA(Visual Basic for Applications) 모듈에서 이 함수를 사용하는 경우를 예로 들어 보겠습니다. VBA 사용에 대해 자세히 알아보려면 검색 옆의 드롭다운 목록에서 개발자 참고를 선택하고 검색 상자에 검색어를 하나 이상 입력하세요.

이 예제에서는 IsNull 함수를 사용하여 변수에 Null 을 포함하는지 여부를 판단합니다.

Dim MyVar, MyCheck
MyCheck = IsNull(MyVar)    ' Returns False.
MyVar = ""
MyCheck = IsNull(MyVar)    ' Returns False.
MyVar = Null
MyCheck = IsNull(MyVar)    ' Returns True.

댓글0