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

Written by

Editorial Team

Reviewed by

Steve Rynearson

Translated by

Younjung Kim

Last updated on 3월 8, 2023

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 코드 예시로 돌아가기