VBA 내장 함수중 Split 함수가 있습니다. Split 함수는 주어진 데이터를 구분 기호에 의해 분리할 때 사용하는 함수입니다.
1. Split 함수
Split 함수는 주어진 데이터를 구분기호로 분리하여 반환하는 함수로 반환 시 일차원 배열로 반환을 합니다.
사용 방법은 다음과 같습니다.
Split ( 데이터, 구분 기호, 반환 단어수, 비교 방법 )
데이터 : Split 함수로 분리할 내용
구분 기호 : 데이터를 구분할 때 기준이 되는 기호로 생략하면 공백이 구분 기호로 설정됨
반환 단어수 : 구분 기호를 기준으로 구분한 데이터를 반환할 때 반환 단어수만큼만 반환하게 됨.
보통은 생략하여 주어진 데이터 전체를 구분기호 기준으로 분리하여 반환함
비교 방법 : 비교할 방법을 설정하는 것으로 아래 링크한 이전 글 Instr 함수를 참조하시기 바랍니다.
2. 예제를 통해 Split 함수 확인
엑셀을 여시고 B2 셀에 '서울특별시 영등포구 여의도동'이라고 입력합니다.
엑셀에서 VBE 창을 여시고 Module을 생성합니다. 그리고 Module 코드 창에 다음과 같이 작성합니다.
Public Sub Split함수()
Dim s As Variant
s = Split(Range("B2").Value, " ")
Range("C2").Value = s(0)
Range("D2").Value = s(1)
Range("E2").Value = s(2)
End Sub
코드를 모두 입력하시고 실행을 하시면 C2 셀부터 E2 셀까지 B2셀에 입력된 주소를 공백 문자를 기준으로 구분하여 입력되는 것을 보실 수 있습니다.
만약 구분한 결과가 몇 개의 배열로 나뉘었는지 모를 경우 이를 확인하여 엑셀 시트에 나타내기 위해서는 어떻게 해야 할까요?
다음 코드를 Module 코드 창에 입력합니다.
Public Sub Split함수()
Dim s As Variant
Dim i, j As Integer
s = Split(Range("B2").Value, " ")
i = UBound(s)
For j = 0 To i Step 1
Cells(2, 3 + j).Value = s(j)
Next
End Sub
UBound( ) 함수는 배열의 가장 마지막 인덱스 번호를 알려줍니다. 하여 UBound( ) 함수를 이용하여 배열 변수 s의 크기를 확인합니다.
그리고, 확인한 배열 변수 s의 크기만큼 For Next 반복문을 반복 실행하여 결괏값을 엑셀 시트에 입력하도록 하였습니다. For Next 반복문에 대해서는 아래 링크된 이전 글을 참조하시기 바랍니다.
'엑셀 > VBA' 카테고리의 다른 글
VBA 수식 입력하기 - Formula (0) | 2021.10.12 |
---|---|
VBA 내장 함수 - Join 함수 (0) | 2021.10.12 |
VBA 내장 함수 - Array 함수 (0) | 2021.10.09 |
VBA 내장 함수 - Date, Time, Now, DateSerial, DateValue (0) | 2021.10.05 |
VBA 내장 함수 - Val 함수, Str 함수 (0) | 2021.10.04 |