Please Enable JavaScript!
Gon[ Enable JavaScript ]

엑셀 VBA 값 숫자 여부 판단하는 IsNumberic 함수 사용하기

엑셀(Excel)/VBA
반응형

엑셀에서는 데이터가 숫자인지 아닌지를 판단해는 경우가 자주 발생합니다. 엑셀은 숫자 데이터를 계산하고 분석하는 도구이며, 계산에 쓰이는 데이터가 숫자가 아닐 경우 오류가 발생하기 때문입니다. 그래서 숫자 여부를 판단하는 함수가 필요합니다. 함수 명은 IsNumberic 입니다.

 

IsNumberic() 함수의 파라미터로 입력한 값이 숫자이면 True 로 반환하고, 숫자가 아니라면 False 로 반환합니다. 표현식이 날짜인 경우는 False 입니다. 문법은 다음과 같습니다.

IsNumberic(표현식)
 - 표현식 : 숫자, 문자열을 입력한다.

 

아래는 IF 함수를 사용해서 IsNumeric 의 결과값이 True 인 경우 숫자임을 알리는 메시지 박스를 출력하는 VBA 소스입니다.  

Sub IsNumberic_Test()
    Dim TestData As String

    TestData = "53"    
    If IsNumeric(TestData) Then
        MsgBox "숫자입니다."
    Else
        MsgBox "숫자가 아닙니다."
    End If
End Sub

 

숫자는 실수, 정수 모두 포함입니다. 3번째 예제는 숫자안에 문자가 포함되어 있습니다. 이것은 숫자가 아니므로 False 를 반환합니다.

Sub IsNumberic_Test()

    Dim TestData As String
    Dim Result As Boolean
    
    TestData = "53"
    Result = IsNumeric(TestData)
    Debug.Print TestData & ":" & Result
    
    TestData = "459.95"
    Result = IsNumeric(MyVar)
    Debug.Print TestData & ":" & Result
    
    TestData = "45 Help"
    Result = IsNumeric(TestData)
    Debug.Print TestData & ":" & Result
    
End Sub

 ※ 아래는 참고하면 좋을 만한 글들의 링크를 모아둔 것입니다.
엑셀 VBA 입력된 형식 확인할 있는 Information 관련 함수 모음
엑셀(Excel) - VBA 숫자를 문자로 변환하는 방법
엑셀 VBA 연산자 사용해서 String 문자열을 합치기
엑셀 VBA 문자열, 텍스트 숫자를 문자열 숫자로 변경하는 방법
셀 VBA 영역 선택하는 여러가지 방법
반응형
Posted by 녹두장군1
,