VBA에서 “StrComp” 함수는 두 문자열을 비교하여 결과를 반환하는 데 사용됩니다. 이 함수는 두 문자열이 같은지, 또는 어떤 문자열이 다른 문자열보다 알파벳 순서에서 앞서는지 또는 뒤따르는지를 판단합니다. 이렇게 “StrComp” 함수를 이용하면 두 문자열을 쉽게 비교할 수 있습니다.
◎ 구문 |
“StrComp” 함수의 구문은 다음과 같습니다.
StrComp(string1, string2, [compare])
l “string1”, “string2”는 비교할 두 문자열을 지정합니다.
l “compare”는 선택적 인수로, 문자열 비교 방법을 지정합니다. 0 (vbBinaryCompare) 은 바이너리 비교(대소문자 구분), 1 (vbTextCompare) 은 텍스트 비교(대소문자 무시)입니다. 생략하면 바이너리 비교를 수행합니다.
“StrComp” 함수의 반환값은 다음과 같습니다.
l 문자열1이 문자열2보다 작을 경우: -1
l 문자열1과 문자열2가 같을 경우: 0
l 문자열1이 문자열2보다 클 경우: 1
l 두 문자열 중 하나라도 Null인 경우: Null
◎ 1. 대소문자를 구분하여 문자열 비교하는 예제 |
코드를 실행하면, "World"와 "Hello"가 알파벳으로 문자열 1이 문자열 2보다 크므로 결과값은 1을 출력합니다.
Sub CompareStrings()
Dim result As Integer
result = StrComp("World", "Hello", vbBinaryCompare)
MsgBox result
End Sub
◎ 2. 대소문자를 무시하고 문자열 비교하는 예제 |
코드를 실행하면, 대소문자를 무시하고 "Hello"와 "hello"를 비교하므로, 결과값은 0 을 출력합니다. 0 은 두 문자열이 같은 경우의 반환값입니다. vbTextCompare 로 인해 대소문자를 무시했기 때문입니다.
Sub CompareStrings()
Dim result As Integer
result = StrComp("Hello", "hello", vbTextCompare)
MsgBox result
End Sub
◎ 3. 두 문자열이 서로 다른 경우의 예제 |
이 코드를 실행하면, "Hello"와 "World"는 다른 문자열로 판단되고, "Hello"가 "World"보다 알파벳 순서에서 앞선 문자열이므로, 결과값은 -1이 출력됩니다.
Sub CompareStrings()
Dim result As Integer
result = StrComp("Hello", "World", vbBinaryCompare)
MsgBox result
End Sub
'엑셀(Excel) > VBA' 카테고리의 다른 글
엑셀 VBA 함수 Replace 문자열 내 문자 또는 문자열 대체하기 (0) | 2023.11.27 |
---|---|
엑셀 VBA 매크로 디버깅, 디버그 코드 분석하기 (1) | 2023.11.26 |
엑셀 VBA 시트 행, 열 선택할 때 Columns, Rows, EntireColumn, EntireRow 사용 (0) | 2023.11.26 |
엑셀 VBA 오름차순, 내림차순 데이터 정렬하기 (0) | 2023.11.24 |
엑셀 VBA 함수 Str 숫자를 문자열로 변환하기 (0) | 2023.11.24 |
엑셀 VBA 함수 CDbl 부동 소수점으로 형변환하기 (2) | 2023.11.24 |
엑셀 VBA 함수 CInt 정수로 형변환하기 (2) | 2023.11.24 |
엑셀 VBA 함수 Date 현재 날짜 반환하기 (0) | 2023.11.22 |