VBA에서 문자열 비교

Iqra Hasnain 2024년2월15일 VBA VBA String
VBA에서 문자열 비교

VBA에서 다른 방법으로 문자열을 비교하는 방법을 소개합니다.

VBA에서 문자열 비교

Excel 시트로 작업하는 동안 문자열을 비교해야 하고 다른 문자열보다 작거나 큰 문자열에 대한 결과를 얻고자 하는 상황이 있습니다. VBA는 두 문자열을 비교하여 숫자 값으로 결과를 얻는 StrComp()로 알려진 이러한 목적을 위한 완벽한 방법을 제공합니다.

비교하는 두 문자열이 모두 같으면 이 메서드는 0을 반환합니다. 첫 번째 문자열이 다른 문자열보다 작으면 -1을 반환 값으로 가져옵니다.

첫 번째 입력 문자열이 다른 문자열보다 크면 결과적으로 1 값을 얻습니다. 사용자 입력 문자열 중 하나가 empty이면 반환 값은 Null이 됩니다.

StrComp() 메서드는 세 가지 비교 방법을 사용하지만 가장 일반적으로 사용되는 것은 두 가지뿐이며 이 두 가지 방법에 대해 설명합니다. 두 문자열의 바이너리를 비교하려면 vbBinaryCompare를 사용할 수 있으며 이 방법은 대소문자를 구분합니다.

두 문자열의 텍스트를 비교하려면 대소문자를 구분하지 않는 vbTextCompare를 사용할 수 있습니다. 예를 들어 두 문자열을 비교하겠습니다.

암호:

# VBA
Sub test()
Dim compare As Integer
stringOne = "Hello World"
stringTwo = "Hello World"

compare = StrComp(stringOne, stringTwo)

MsgBox compare

End Sub

출력:

StrComp 메서드를 사용하여 VBA의 문자열 비교

위의 예에서 반환 값으로 0을 얻은 것과 동일한 문자열을 전달했습니다. 다른 값을 전달하고 우리가 얻는 반환 값을 확인합시다.

암호:

# VBA
Sub test()
Dim compare As Integer
stringOne = "Hello World"
stringTwo = "Hello World!"

compare = StrComp(stringOne, stringTwo)

MsgBox compare

End Sub

출력:

StrComp 메서드를 사용하여 VBA의 문자열을 비교하고 다른 값 제공

위의 코드에서 두 번째 문자열이 첫 번째 문자열보다 크기 때문에 반환 값으로 -1을 얻은 길이의 다른 문자열을 전달했습니다. StrComp()에서 문자열 비교 방법을 시도하고 동일한 문자열을 사용하지만 대소문자가 다른 vbTextCompare 방법을 사용하는 경우 결과가 어떻게 다른지 확인합니다.

암호:

# VBA
Sub test()
Dim compare As Integer
stringOne = "Hello World"
stringTwo = "Hello WorLd"

compare = StrComp(stringOne, stringTwo, vbTextCompare)

MsgBox compare

End Sub

출력:

StrComp 메서드와 vbTextCompare를 사용하여 VBA의 문자열 비교

이제 하나의 추가 공간을 추가하여 이 예제에서 vbBinaryCompare 메서드를 사용합니다.

암호:

# VBA
Sub test()
Dim compare As Integer
stringOne = "Hello World"
stringTwo = "Hello  World"

compare = StrComp(stringOne, stringTwo, vbBinaryCompare)

MsgBox compare

End Sub

출력:

StrComp 메서드와 vbBinaryCompare를 사용하여 VBA에서 문자열 비교

이러한 방식으로 StrComp() 메서드와 vbTextComparevbBinaryCompare와 같은 내장 메서드를 사용하여 길이 또는 텍스트를 기준으로 두 문자열을 비교할 수 있습니다.

튜토리얼이 마음에 드시나요? DelftStack을 구독하세요 YouTube에서 저희가 더 많은 고품질 비디오 가이드를 제작할 수 있도록 지원해주세요. 구독하다

관련 문장 - VBA String