VBA – 같지 않음, 크거나 같음 등 기타 비교 연산자
In this Article
VBA에서는 비교 연산자를 사용하여 값을 비교할 수 있습니다. 비교 연산자를 사용하여 값을 비교하고 그 결과로 불리언 타입의 참 또는 거짓을 반환할 수 있습니다.
VBA의 주요 비교 연산자
다음은 VBA에서 사용되는 주요 비교 연산자입니다:
비교 연산자 |
설명 |
= |
같음 |
<> |
같지 않음 |
> |
큼 |
>= |
크거나 같음 |
< |
작음 |
<= |
작거나 같음 |
같지 않음 (<>)
같지 않음 연산자는 <>입니다. 두 값이 같지 않은지 확인하고 TRUE 또는 FALSE를 반환합니다. 이 연산자는 작음 연산자(<)와 큼 연산자(>)의 조합입니다.
이 예에서는 5가 3과 같지 않은지 확인하여 메시지 박스에 False를 반환합니다.
MsgBox 5 <> 3
같지 않음 연산자를 사용하여 셀 값 비교하기
숫자를 비교할 수 있는 방법에는 여러 가지가 있습니다. 이전 예제에서는 5와 3을 코드에 직접 하드코딩했습니다. 값을 비교하는 다른 두 가지 방법을 보여드리겠습니다.
이 예제에서는 두 셀 값이 서로 같지 않은지 확인 합니다:
MsgBox Range("A1").Value <> Range("B1").value
값을 비교하는 또 다른 방법은 변수를 사용하는 것입니다.
Sub NotEqualTo ()
Dim intA As Integer
Dim intB As Integer
Dim blnResult As Boolean
intA = 5
intB = 6
If intA <> intB Then
blnResult = True
Else
blnResult = False
End If
End Sub
이 예제에서는 정수 변수 intA가 intB와 같지 않은지 확인합니다. 같지 않음의 비교 결과가 참이면 불리언 타입의 변수 blnResult의 값은 True가 되고, 그렇지 않으면 False가 됩니다.
If 문에서 <> 연산자를 사용하여 intA와 intB의 값이 다른지 확인하였습니다:
If intA <> intB Then
blnResult = True
Else
blnResult = False
End If
intA의 값이 5이고 intB의 값이 6이면 변수가 같지 않으므로 blnResult는 True를 반환합니다:
같음
같음 연산자도 동일한 방식으로 작동합니다. 두 값이 같은지 확인하고 True 또는 False를 반환합니다. 다음은 예제 코드입니다:
Sub EqualTo ()
Dim intA As Integer
Dim intB As Integer
Dim blnResult As Boolean
intA = 5
intB = 5
If intA = intB Then
blnResult = True
Else
blnResult = False
End If
End Sub
이 예제에서는 intA가 intB와 같은지 확인합니다. 이것이 참이면 불리언 타입의 변수 blnResult의 값은 True가 되고, 그렇지 않으면 False가 됩니다.
우선 intA와 intB의 값을 5로 설정합니다:
intA = 5
intB = 5
그런 다음 If 문에서 = 연산자를 사용하여 intA와 intB의 값이 같은지 확인합니다:
If intA = intB Then
blnResult = True
Else
blnResult = False
End If
두 변수가 모두 5와 같으므로 blnResult는 True를 반환합니다:
큼/ 작음 연산자
큼 연산자(>)와 작음 연산자(<)도 동일한 방식으로 작동합니다.
큼 연산자
MsgBox 5 > 3
작음 연산자
MsgBox 5 < 3
크거나 같음 연산자 / 작거나 같음 연산자
값이 크거나 같은지 확인하려면 같음 연산자(=)와 큼 연산자(>)를 결합하여 사용합니다(작거나 같을 경우 =와 <을 결합합니다).
크거나 같음
MsgBox 5 >= 3
작거나 같음
MsgBox 5 <= 3
크거나 같음 연산자를 위 예제와 같은 프로시저에서 사용해 보겠습니다:
Sub GreaterThanEqualTo ()
Dim intA As Integer
Dim intB As Integer
Dim blnResult As Boolean
intA = 5
intB = 5
If intA >= intB Then
blnResult = True
Else
blnResult = False
End If
End Sub
이 예제에서는 intA가 intB보다 크거나 같은지 확인합니다. 이것이 참이면 불리언 변수 blnResult의 값은 True가 되고, 그렇지 않으면 False가 됩니다.
If 문에서 >= 연산자를 사용하여 intA의 값이 intB보다 크거나 같은지 확인합니다:
If intA >= intB Then
blnResult = True
Else
blnResult = False
End If
결론적으로 두 변수가 모두 5와 같으므로 blnResult는 True를 반환합니다:
Is 연산자
Is 연산자는 두 객체 변수에 동일한 객체가 포함되어 있는지 테스트합니다:
Sub CompareObjects()
Dim ws1 As Worksheet, ws2 As Worksheet
Set ws1 = Sheets("Sheet1")
Set ws2 = Sheets("Sheet2")
If ws1 Is ws2 Then
MsgBox "Same WS"
Else
MsgBox "Different WSs"
End If
End Sub
Like 연산자
The Like 연산자는 일부만 일치하는 텍스트를 찾을 때 사용합니다. 이 예제에서는 문자열이 “Mr.”로 시작하는지 확인합니다.
Sub LikeDemo()
Dim strName As String
Dim blnResult As Boolean
strName = "Mr. Michael James"
If strName Like "Mr*" Then
blnResult = True
Else
blnResult = False
End If
End Sub
문자열을 비교하는 방법을 배우려면 여기를 클릭하세요: VBA 문자열 비교 – StrComp
논리 연산자 사용법에 대해 자세히 알아보려면 여기를 클릭하세요: VBA 논리 연산자