엑셀 VBA 입력된 값 형식 확인할 수 있는 Information 관련 함수 모음

 

환경: Microsoft Excel 2013

 

VBA 에는 변수에 저장된 값이 어떤 형식인지 확인할 수 있는 함수들이 있습니다. 보통 로직에서 데이터를 검증하기 위해 많이 사용합니다. 왜냐하면 개발자가 생각하는 데이터 형식이 아닌 경우 분기해서 별도의 처리를 해야 하기 때문입니다. 모두 함수명이 Is 로 시작합니다. 반환값은 True/False 로 구분합니다.

 

함수의 종류는 다음과 같습니다. 변수에 저장된 데이터가 날짜 형식인지 체크하고 싶다면 IsDate() 함수를 사용해야겠죠.

 

l  IsNumberic() : 데이터가 숫자인지 체크

l  IsDate() : 데이터가 날짜형식인지 체크

l  IsObject() : 데이터가 개체인지 체크

l  IsNull() : Null 값인지 아닌지 체크

l  IsEmpty() : 비어있는지 체크

l  IsError() : Error 형인지 체크

l  IsMissing() : Optional 로 정의된 인수가 전달되었는지 체크

l  IsArray() : 배열인지 체크

 

아래 소스는 Information 함수를 응용해서 만들었습니다. InputBox() 로 데이터를 입력 받은 후 IsNumberic 함수로 반환 받은 글자를 판단합니다. 그리고 MsgBox 로 결과값을 표시합니다.

 

Private Sub NumberCheck()

    Dim inputdata As String

    inputdata = InputBox("숫자나 문자를 입력하세요.", "입력")

    If IsNumeric(inputdata) Then

        MsgBox "데이터는숫자임 : " & inputdata

    Else

        MsgBox "데이터는문자임 : " & inputdata

    End If

End Sub

 

결과는 다음과 같습니다. 함수를 실행하면 InputBox() 가 입력 박스를 띄웁니다. 그리고 숫자나 문자 중 하나를 입력하고 [확인] 버튼을 누릅니다.

엑셀 VBA 입력된 값 형식 확인할 수 있는 Information 관련 함수 모음

 

InputBox 에서 입력받은 데이터로 숫자 혹은 문자인지 판단해서 결과 값을 MsgBox 로 표시합니다

엑셀 VBA 입력된 값 형식 확인할 수 있는 Information 관련 함수 모음


저작자 표시 비영리 변경 금지
신고
Posted by 녹두장군