Home » Favorite Link » 엑셀(Excel) – VBA 숫자를 문자로 변환하는 방법

엑셀(Excel) – VBA 숫자를 문자로 변환하는 방법

https://mainia.tistory.com/

https://mainia.tistory.com/2805

VBA에서 숫자를 문자로 바꿔야 하는 경우가 종종 있습니다. 숫자를 문자로 바꿀 수 있는 함수에는 두 가지가 있는데요. Str 과 Format 가 그것입니다. 함수 사용에 있어서 주의할 것은 숫자로 변환한 후 문자열 합치기를 하게 되는데, 그때 공백을 꼭 체크하셔야 합니다.

▼ 간단하지만 항상 찾게 되는 문자 변환 함수입니다. 문자로 변환하고 싶다면 Str 과 Format 를 사용하시면 됩니다. 보통 문자로 변환하는 이유가 숫자를 문자와 합쳐서 문자열을 만들고 싶을 때 입니다. 그런데 하나 체크해야 될 것이 Str() 함수는 변환 후 앞자리에 공백이 있을 수 있으므로 항상 Ltrim 으로 제거해 주는 것이 좋습니다.

Trim 은 공백 제거 함수 입니다. Ltrim 은 왼쪽 Left 의 약자를 앞에 붙인 것입니다. 그럼 Rtrim 이 있겠죠. 오른쪽 공백을 없애는 함수 입니다. 첫 번째 소스는 Str 함수를 이용해서 숫자를 문자로 변환한 것이며 그대로 로그에 찍으면 앞자리에 공백이 들어가 있는 것을 확인할 수 있습니다. 두 번째 소스는 Ltrim 을 이용해서 공백을 제거한 후 Debug.Print 를 이용해 로그에 찍어 본 것입니다. 세 번째는 Format 을 이용해서 변환한 것입니다.

Sub 시트추가_Click()           Dim 변환문자 As String       ‘ 숫자를 문자열로 변환    변환문자 = Str(222)    변환문자 = “[” & 변환문자 & “]”    Debug.Print 변환문자       ‘변환하게 되면 공백이 생긴다. 공백제거를 위해 LTrim 함수사용    변환문자 = Str(222)    변환문자 = LTrim(변환문자)    변환문자 = “[” & 변환문자 & “]”    Debug.Print 변환문자     ‘ 숫자를 문자열로 변환    변환문자 = Format(222)    변환문자 = “[” & 변환문자 & “]”    Debug.Print 변환문자   End Sub