TOP

VBA-강의 7.2. 조건 (조건)

If...Then...Else 및 Select Case 조건을 확인하는 것 외에도 다음 확인을 사용할 수도 있습니다.

  • 데이터 유형 비교(함수 IsNumeric, IsDate, IsEmpty, 연산자 Is Nothing)
  • 변수 유형 비교(VarType 함수)
  • 텍스트 피드 비교(연산자 Like)

  • 데이터 유형 확인

    IsNumeric(이전 과정에서 사용한 함수)은 값이 숫자이면 TRUE(TRUE)를 반환하고, -가 숫자가 아니면 FALSE(FALSE)를 반환합니다.

    If IsNumeric(Range("A1")) = True Then '값이 숫자인 경우...
    

    다음 코드는 이전 코드와 동일한 효과를 생성합니다(구성 자체가 조건 확인이므로 = True를 포함할 필요가 없습니다).

    If IsNumeric(Range("A1")) = True Then '값이 숫자인 경우...
    

    값이 숫자가 아닌지 확인하려면 다음 두 가지 방법으로 확인할 수 있습니다.

    If IsNumeric(Range("A1")) = False Then '값이 숫자가 아닌 경우...
    
    If Not IsNumeric(Range("A1")) Then '값이 숫자가 아닌 경우...
    

    IsNumeric과 유사한 몇 가지 함수를 더 살펴보겠습니다.

    If IsDate(Range("A1")) Then '값이 날짜인 경우...
    
    If IsEmpty(Range("A1")) Then '비어 있는 경우...
    
    If var_object Is Nothing Then '객체가 정의되지 않은 경우...
    

    변수 유형 확인

    변수 유형에 따라 명령을 실행하려면 VarType 함수를 사용해야 합니다.

    "=" 기호를 입력하자마자 변수 유형 목록이 나타납니다.

    If VarType(my_variable) = vbInteger Then 'IF my_variable이 변수 유형 Integer입니다...
    

    상수 값:

    끊임없는
    vbEmpty0
    vbNull1
    vbInteger2
    vbLong3
    vbSingle4
    vbDouble5
    vbCurrency6
    vbDate7
    vbString8
    vbObject9
    vbError10
     If VarType(my_variable) = vbInteger Then 'IF my_variable이 변수 유형 Integer입니다...
     '다음과 동일합니다:
     If VarType(my_variable) = 2 Then 'IF my_variable이 변수 유형 Integer입니다...
    

    텍스트 피드 비교(Like)

    조금 앞서 우리는 다음 코드 조각을 사용했습니다.

    my_variable = "Example 12345"
    
    If my_variable = "Example 12345" Then '=> 참(TRUE)
    

    이 경우 두 테이프는 동일하지만 변수에 "12345" 값이 포함되어 있는지 확인하려면 다음과 같이 하십시오. 다른 문자를 고려하지 않고 Like 명령을 사용해야 하며, 찾고 있는 값 앞뒤에 *(별표) 연산자를 사용해야 합니다.

    연산자 *(별표)는 다음과 같이 해독됩니다. 임의의 문자 또는 문자 집합:

    my_variable = "Example 12345"
    
    If my_variable Like "*12345*" Then '=> 참(TRUE)
    

    연산자 #(해시)는 다음과 같이 디코딩됩니다. 0에서 9까지의 단일 숫자 문자:

    my_variable = "Example 12345"
    
    If my_variable Like "Example 12###" Then '=> 참(TRUE)
    

    운영자? (물음표)는 다음과 같이 해석됩니다. 임의의 단일 문자:

    my_variable = "Example 12345"
    
    If my_variable Like "?xample?1234?" Then '=> 참(TRUE)
    

    같은 방식으로 특정 문자나 문자 집합을 사용할 수도 있습니다.

    my_variable = "Example 12345"
    
    If my_variable Like "[DEF]xample 1234[4-7]" Then '=> 참(TRUE)
    

    운영자! [ 뒤에 추가된 (느낌표)는 다음을 의미합니다: 대괄호로 묶이지 않은 모든 문자:

    my_variable = "Example 12345"
    
    If my_variable Like "[!GHIJ]xample 1234[!6-9]" Then '=> 참(TRUE)
    
    이 맥락에서 대문자는 동일한 소문자와 동일하지 않습니다. 대문자와 소문자를 구분하지 않으려면 모듈 시작 부분에 Option 텍스트 비교 명령을 작성하면 됩니다.

    LO Calc의 YLC Utilities 메뉴

    LO Calc의 YLC Utilities 메뉴

    Excel의 YLC Utilities 메뉴

    Excel의 YLC Utilities 메뉴