Vba: 문자열을 배열로 분할하는 방법(예제 포함)


다음 기본 구문을 사용하여 VBA를 사용하여 문자열을 배열로 분할할 수 있습니다.

 SubSplitString ()

    Dim SingleValue() As String
    Dim i As Integer
    Dim j As Integer

    For i = 2 To 7
    
    SingleValue = Split(Range(" A " & i), " ")
    
       For j = 1 To 2
           Cells(i, j + 1).Value = SingleValue(j - 1)
       Next j
       
    Next i
    
End Sub

이 특정 예제에서는 각 문자열의 공백을 기준으로 A2:A7 범위의 각 문자열을 나눈 다음 각 문자열의 결과 요소를 셀 범위 B2:B7C2:C7 에 할당합니다.

다음 예에서는 실제로 이 구문을 사용하는 방법을 보여줍니다.

예: VBA를 사용하여 문자열을 배열로 분할

Excel에 다음과 같은 문자열 목록이 있다고 가정합니다.

공백을 기준으로 각 문자열을 분할한 다음 각 문자열의 결과 요소를 새 셀에 할당한다고 가정합니다.

이를 위해 다음 매크로를 생성할 수 있습니다:

 SubSplitString ()

    Dim SplitValues() As String
    Dim i As Integer
    Dim j As Integer

    For i = 2 To 7
    
    SplitValues = Split(Range(" A " & i), " ")
    
       For j = 1 To 2
           Cells(i, j + 1).Value = SplitValues(j - 1)
       Next j
       
    Next i
    
End Sub

이 매크로를 실행하면 다음과 같은 출력이 나타납니다.

VBA는 문자열을 배열로 분할합니다.

B열과 C열에는 A열에 있는 각 전체 이름의 성과 이름이 포함되어 있습니다.

또한 VBA 분할 기능을 사용하여 다른 구분 기호를 기준으로 배열을 분할할 수 있습니다.

예를 들어 다음과 같은 이메일 목록이 있다고 가정해 보겠습니다.

@ 기호가 나타나는 위치에 따라 각 이메일을 배열로 분할한다고 가정해 보겠습니다.

이를 위해 다음 매크로를 생성할 수 있습니다:

 SubSplitString ()

    Dim SplitValues() As String
    Dim i As Integer
    Dim j As Integer

    For i = 2 To 7
    
    SplitValues = Split(Range(" A " & i), " @ ")
    
       For j = 1 To 2
           Cells(i, j + 1).Value = SplitValues(j - 1)
       Next j
       
    Next i
    
End Sub

이 매크로를 실행하면 다음과 같은 출력이 나타납니다.

분할 기능은 @ 기호를 기준으로 A열의 각 이메일을 분할하고 결과 항목을 B열과 C열에 표시합니다.

참고 : VBA 분할 기능에 대한 전체 설명서는 여기에서 찾을 수 있습니다.

추가 리소스

다음 자습서에서는 VBA를 사용하여 다른 일반적인 작업을 수행하는 방법을 설명합니다.

VBA: 문자열에서 문자 발생 횟수를 계산하는 방법
VBA:문자열에 다른 문자열이 포함되어 있는지 확인하는 방법
VBA: 특정 텍스트가 포함된 셀 수를 계산하는 방법

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다