티스토리 뷰

오늘은 엑셀 매크로 VBA에서 문자열을 처리하는 사용법에 대해서 좀더 알아보도록 하겠습니다. 오늘 알아볼 함수는 StrComp, StrConv, StrReverse 입니다. 이전의 내용을 확인하고 싶으시면 아래의 링크를 참조하시기 바랍니다.



오늘 배울 문자열 처리를 위한 각 함수의 기능은 아래와 같습니다.


 기능

관련 함수 

 두개의 문자열 비교하기

 StrComp 

 문자열 컨버팅 하기

 StrConv 

 문자열 뒤집기

 StrReverse


위의 기능을 파악하기 위해서 사용하는 테스트 환경은 아래와 같습니다. 엑셀에서 A1에 아래와 같이 텍스트를 입력합니다. 



그리고 Alt + F11을 눌러 Microsoft Visual Basic 창을 열어 아래와 같이 구현을 합니다. 


Dim variable As String


Sub DoStringManupulationFunction()


    variable = Range("A1").Value

    

    MsgBox StrComp(variable, "This is gus-world")

    MsgBox StrComp(variable, "This is Gus-World")

    

    MsgBox StrConv(variable, vbUpperCase)

    MsgBox StrConv(variable, vbLowerCase)

    

    MsgBox StrReverse(variable)

    


End Sub


1) StrComp 함수 : 값 비교하기


StrComp 함수의 원형은 아래와 같습니다. StrComp는 2개의 문자열을 인자와 하나의 옵션 값을 받습니다. 첫번째 인자와 두번재 인자는 비교할 2개의 문자열을 나타냅니다. 마지막 compare 인자는 값에 대한 타입을 나타냅니다. 옵션에 대한 값은 아래와 같습니다. 



StrComp ( string1, string2 [, compare ] ) As Integer


StrComp는 -1, 0, 1 세개의 결과를 리턴합니다. 2개의 값이 동일하면 0, 앞의 값이 뒤의 값보다 작으면 -1, 크기 1을 리턴하게 됩니다. 위의 코드를 실행시키면 StrComp에 대해서는 아래와 같은 결과를 같습니다. 



[This is Gus-World와 This is gus-world 비교 결과]



[This is Gus-World와 This is Gus-World 비교 결과]



2) StrConv 함수 : 문자열 컨버팅 하기


StrConv 함수의 원형은 아래와 같습니다. StrConv는 사용자가 컨버팅 하고자는 목적에 따라 대문자로 변환, 소문자로 변환등의 옵션을 설정하여 문자열을 변경합니다. 


StrConv ( text, conversion, LCID ) As String


변환에 대한 옵션은 아래와 같습니다. 대문자, 소문자, 적절한 대소문자 결정, 유니코드, 유니코드로 부터의 변환에 대한 설정을 할 수 있습니다. LCID와 같은 경우는 옵션이고 시스템에대한 정보이기 때문에 무시해도됩니다. 



This is Gus-World를 대문자/소문자로 변환시 아래와 같은 결과를 볼 수 있습니다. 



[대문자로 변환 결과]



[소문자로 변환 결과]


3) StrReverse 함수 : 문자열 역순으로 반환하기


마지막으로 StrReverse입니다. StrRever의 함수원형을 아래와 같으며, 이 함수는 문자열을 받아서 그 문자열을 역순으로 변환하여 전달을 합니다. 


StrConv ( text, conversion, LCID ) As String


This is Gus-World를 이용하여 이 함수를 쓰면 아래와 같은 결과를 확인할 수 있습니다.



[This is Gus-World 역순으로 변환 결과]


이 글에서는 VBA에서 문자열을 처리할 수 있는 방법에 대해서 알아보았습니다.


이 글이 도움이되셨나요?

그렇다면 아래의 그림을 클릭해주세요.



댓글