2015-08-21

VBA - 엑셀 문자열 Split 함수- 만들기와 사용 방법

VBA로 함수를 만든다.(Alt + F11)
배열을 반환하는 함수이다.

Function split_H(text As String, delimiter As String)

    split_H = Split(text, delimiter)

End Function




아래의 문장을 분리하려 한다.







1. 분리된 단어들이 들어갈 자리를 선택한다. C1:H1 



2. F2 키를 눌러 커서가 C1 에 위치하면, 
다음 수식을 입력한다.: =split_H(A1," ")









3. CTRL+SHIFT+ENTER ( ENTER 키 대신) 을 누른다.- 이것은 ARRAY 수식을 지정하는 것이고 

결과로 {=split_H(A1," ")} 의 대괄호를 만든다. (대괄호-{}를 직접입력 하는 것이 아니다).
결과는 아래와 같다.















VBA함수를 만들지 않고 워크시트 함수만으로 단어 분리하기








공백으로 분리된 문자열을 임시용어1,...임시용어4까지 만든다.

앞 단어부터 하나씩 잘라 임시용어를 만드는 것이다.

임시용어1에 들어갈 수식은 다음과 같다.

=IF(IFERROR(FIND(" ",A2),"e")<>"e",RIGHT(A2,LEN(A2) - FIND(" ",A2)),"")

임시용어2: =IF(IFERROR(FIND(" ",B2),"e")<>"e",RIGHT(B2,LEN(B2) - FIND(" ",B2)),"")
임시용어3: =IF(IFERROR(FIND(" ",C2),"e")<>"e",RIGHT(C2,LEN(C2) - FIND(" ",C2)),"")
임시용어4: =IF(IFERROR(FIND(" ",D2),"e")<>"e",RIGHT(D2,LEN(D2) - FIND(" ",D2)),"")


단어1 ~ 단어5에 들어갈 수식은 다음과 같다.

단어1: =IFERROR(LEFT(A2,FIND(" ",A2)-1),A2)  //문자열 공백이전 한단어 잘라오기
단어2: =IFERROR(LEFT(B2,FIND(" ",B2)-1),B2)  //임시용어1에서 공백이전 한단어 잘라오기
:
단어5: =IFERROR(LEFT(E2,FIND(" ",E2)-1),E2)  //임시용어4에서 공백이전한단어 잘라오기







--------------

구글시트에서는 그냥 =split(셀, delimiter)하면 끝.


문자열=split(A2, " ")
노트북 로그인 절차 설명노트북로그인절차설명






'

No comments:

Post a Comment