VBA 코드 예시로 돌아가기

VBA 텍스트 문자열을 숫자로 변환하기

VBA 코드에서 텍스트로 저장된 숫자를 실제 숫자로 변환해야 할 수도 있습니다. 이 튜토리얼에서는 문자열정수, long, double, 소수 또는 통화 데이터 유형으로 변환하는 데 필요한 함수를 살펴봅니다(숫자를 문자열로 변환하는 방법을 알아보려면 여기를 클릭하세요).

문자열을 정수로 변환하기

CInt 또는 CLng 함수를 사용하여 문자열을 정수로 변환할 수 있습니다. 분수가 0.5보다 작으면 내림하고, 분수가 0.5보다 크거나 같으면 반올림합니다. 다음 코드는 문자열을 정수로 변환합니다:

MsgBox CInt("7.55")

결과는 다음과 같습니다:

다음 코드는 CLng 함수를 사용하여 문자열을 정수로 변환합니다:

MsgBox CLng("13.5")

결과는 다음과 같습니다:

참고: CInt 또는 CLng 함수를 사용하여 문자열을 정수 또는 긴 데이터 유형으로(각각) 변환할 수 있습니다. 긴 데이터 유형은 더 큰 숫자가 허용된다는 점을 제외하면 정수 데이터 유형과 동일합니다. 과거에는 메모리 제약으로 인해 이러한 구분이 필요했습니다. 최신 프로그래밍에서는 메모리가 더 이상 문제가 되지 않으므로 긴 데이터 유형을 사용하지 않을 이유가 없습니다. 따라서 항상 정수 대신 긴 데이터 유형을 사용하는 것이 좋습니다.

직접 실행 창을 사용하여 정수로 적절하게 변환하지 않을 경우 값이 어떻게 처리되는지 확인할 수 있습니다:

Debug.Print "13.5" + "13.5"


일반적으로 텍스트는 변수로 저장되며 이 변수는 아래 코드와 같이 숫자 데이터 유형으로 변환해야 합니다:

Sub Using_Variables()

Dim valueOne As String
valueOne = 5
MsgBox CLng(valueOne) + CLng(valueOne)

End Sub

문자열을 소수로 변환하기

CDbl 또는 CDec 함수를 사용하여 문자열을 소수로 변환할 수 있습니다. 다음 코드는 문자열을 double 데이터 유형으로 변환합니다:

MsgBox CDbl("9.1819")

결과는 다음과 같습니다:

다음 코드는 문자열을 소수 데이터 유형으로 변환합니다:

MsgBox CDec("13.57") + CDec("13.4")

The result is:

직접실행 창을 사용하여 값이 double 또는 소수 데이터 유형으로 적절하게 변환되지 않았을 경우 어떻게 처리되는지 확인할 수 있습니다:

Debug.Print "13.57" + "13.4"

결과는 다음과 같습니다:

참고: 소수 데이터 유형은 double 데이터 유형보다 더 긴 숫자를 저장할 수 있으므로 불확실한 경우 항상 십진수 데이터 유형을 사용하는 것이 좋습니다.

문자열을 통화로 변환하기

CCur 함수를 사용하여 문자열을 통화로 변환할 수 있습니다. 다음 코드는 문자열을 통화 데이터 유형으로 변환합니다:

Range("A1").Value = CCur("18.5")

결과는 다음과 같습니다:

vba-free-addin

VBA 코드 예시 추가 기능

본 웹사이트에 있는 모든 코드 예시에 쉽게 접근해보세요.

메뉴로 이동하여 클릭만 하면 코드는 모듈에 바로 입력됩니다. .xlam 추가 기능.

(설치가 필요 없습니다!)

무료 다운로드

VBA 코드 예시로 돌아가기