Please Enable JavaScript!
Gon[ Enable JavaScript ]

엑셀 VBA 문자열 분할 함수 Split 사용하기

엑셀(Excel)/VBA
반응형

VBA에서 “Split” 함수는 문자열을 특정 구분자를 기준으로 분리하여 배열에 저장하는 기능을 합니다. 아래 샘플을 통해서 어떻게 문자열을 분리하고 처리하는지 다양한 방법을 보여 드리겠습니다. 

 

 

1. 구문

 

Split(expression, [ delimiter, [ limit, [ compare ]]])
 
l  “expression”: 분리하려는 문자열입니다.
l  “delimiter”(선택적): 구분자로 사용할 문자열입니다. 지정하지 않으면 공백이 기본값으로 사용됩니다.
l  “limit”(선택적): 반환할 최대 문자열의 수입니다. 지정하지 않으면 가능한 많은 수의 값을 반환됩니다.
l  “compare”(선택적): 문자열 비교 방법을 지정하는데 사용됩니다. 지정하지 않으면 Binary Comparison이 기본값으로 사용됩니다.

  

2. 문자열을 공백으로 분리하는 예제

 

예제에서는 "안녕하세요. 저는 녹두입니다."라는 문자열을 공백으로 분리합니다. 실행 결과, 메시지 박스에는 "안녕하세요.", "저는", "녹두입니다."가 줄바꿈으로 구분하여 메시지 박스에 출력합니다. 

Sub SplitExample()
    Dim result() As String
    result = Split("안녕하세요. 저는 녹두입니다.", " ")
    MsgBox result(0) & vbNewLine & result(1) & vbNewLine & result(2)
End Sub

 

  

3. 문자열을 쉼표로 분리하고, 반환할 문자열의 수를 제한하는 예제

 

예제에서는 limit 인자를 이용해서 "사과,바나나,포도,오렌지"라는 문자열을 쉼표로 분리하되, 반환할 배열 개수를 3으로 제한합니다. 실행 결과, 메시지 박스에는 "사과", "바나나", "포도"만 출력하되 "오렌지"는 제외됩니다.

 

이렇게 “Split” 함수는 문자열을 특정 구분자를 기준으로 분리하고, 그 결과를 배열로 반환하는 기능을 제공합니다. 이는 사용자로부터 받은 입력을 처리하거나, 복잡한 문자열 데이터를 분석할 때 유용하게 사용될 수 있습니다. 

Sub SplitExample()
    Dim result() As String
    result = Split("사과,바나나,포도,오렌지", ",", 3)
    MsgBox result(0) & vbNewLine & result(1) & vbNewLine & result(2)
End Sub

 

 

4. “Split” 함수의 “compare” 인자 사용 예제

 

“vbTextCompare”는 대소문자를 구분하지 않고 텍스트를 비교하는데 사용되는 상수입니다. 예를 들어, "Apple" "apple"“vbTextCompare”를 사용하면 같은 것으로 간주됩니다. 다음은 간단한 예제입니다. 이 예제는 “vbTextCompare”를 사용하여 두 문자열을 비교하고 메시지 박스에 결과를 표시합니다.

 

이 코드는 "Apple" "apple"을 비교하고 “vbTextCompare”를 사용하여 대소문자를 구분하지 않고 비교합니다. 결과에 따라 "두 문자열은 같습니다." 또는 "두 문자열은 다릅니다." 메시지가 표시합니다. 

Sub TextCompareExample()
    Dim str1 As String
    Dim str2 As String
    Dim result As Integer
 
    str1 = "Apple"
    str2 = "apple"
 
    ' 대소문자를 구분하지 않고 비교
    result = StrComp(str1, str2, vbTextCompare)
 
    If result = 0 Then
        MsgBox "두 문자열은 같습니다."
    Else
        MsgBox "두 문자열은 다릅니다."
    End If
End Sub

 


 

반응형
Posted by 녹두장군1
,