프로젝트 및 실습/VBA

[VBA] 문자열 자르기(Left, Right, Mid)

jooona 2022. 8. 23. 18:17
반응형

VBA에서 문자열을 자르기 위해 사용되는 함수는 Left, Right, Mid 세 가지가 있습니다. 세 함수 모두 이름만 봐도 어떤 기능을 가지고 있는지 알 수 있게 직관적으로 되어있죠?

 

Left: 문자열의 좌측 끝으로부터 지정한 길이만큼 문자열을 잘라서 반환합니다.

Right: 문자열의 우측 끝으로부터 지정한 길이만큼 문자열을 잘라서 반환합니다.

Mid: 문자열의 지정된 위치로부터 지정된 길이만큼 (길이를 지정하지 않으면 끝까지) 문자열을 잘라서 반환합니다.

 

 

 

사용법은 다음과 같습니다.

 

Left(StringLength)
Right(StringLength)
Mid(StringStart, [Length])

 

String

세 경우 모두 String은 자르고자 하는 문자열을 뜻합니다.

 

Length

Left에서 Length는 문자열의 좌측 끝으로부터 몇 글자를 잘라낼 것인지, Right에서는 반대로 우측 끝으로부터 몇 글자를 잘라낼 것인지를 뜻합니다. Mid에서는 시작점으로부터 몇 글자를 잘라낼 것인지를 뜻합니다. Mid에서는 Length가 옵션 값이어서 기입하지 않으면 시작점으로부터 우측 끝까지를 반환하기 합니다.

 

Start

Mid에서 Start는 시작점을 의미합니다. Length를 지정하였다면 시작점으로부터 Length의 글자 수만큼 잘라냅니다.

 

 

 

예시를 통해 정리해보겠습니다.

 

Sub Left_Right_Example()
    
    Dim str As String
    str = "IamStudent"
    
    Debug.Print "Left: " & Left(str, 5)  'Left 예시
    Debug.Print "Right: " & Right(str, 5)  'Right 예시
    Debug.Print "Mid: " & Mid(str, 2)  'Mid 예시(Length 지정 x)
    Debug.Print "Mid: " & Mid(str, 2, 5)  'Mid 예시(Length 지정)
    
End Sub

 

 

예시 설명

 

"IamStudent"라는 문자열을 이용해 Left, Right, Mid의 예시를 작성해보았습니다.

 

첫 번째 예시의 경우 문자열의 좌측 끝으로부터 5글자를 잘라냈기 때문에 "IamSt"라는 문자열이 반환되었습니다.

두 번째 예시의 경우 문자열의 우측 끝으로부터 5글자를 잘라냈기 때문에 "udent"라는 문자열이 반환되었습니다.

세 번째 예시의 경우 문자열의 2번째 글자로부터 (Length를 지정하지 않았기 때문에) 우측 끝까지 잘라냈기 때문에 "amStudent"라는 문자열이 반환되었습니다.

네 번째 예시의 경우 문자열의 2번째 글자로부터 5글자를 잘라냈기 때문에 "amStu"라는 문자열이 반환되었습니다.   

반응형

'프로젝트 및 실습 > VBA' 카테고리의 다른 글

[VBA] TreeView(1): File Structure 출력  (2) 2022.09.19
[VBA] Choose Function  (0) 2022.08.23
[VBA] File Dialog를 사용해 파일 선택  (0) 2022.08.22
[VBA] SGN Function  (0) 2022.08.22
[VBA] Http Request 보내기  (0) 2022.08.11