Please Enable JavaScript!
Gon[ Enable JavaScript ]

엑셀 VBA 통화 형식 지정 함수 FormatCurrency 사용하기

엑셀(Excel)/VBA
반응형

VBA에서 “FormatCurrency” 함수는 숫자를 통화 형식으로 변환하는데 사용합니다. 함수는 통화 기호, 소수점 이하 자릿수, 음수 표현 방식 등을 자동으로 처리해주기 때문에, 통화 값을 다룰 때 매우 유용합니다. “FormatCurrency” 함수는 4개의 선택적 인수를 활용해서 통화 형식의 표현을 더 세밀하게 제어할 수 있습니다.

 


 

 

1. 구문

 

“FormatCurrency” 함수의 구문은 다음과 같습니다.

 

FormatCurrency(Expression, [NumDigitsAfterDecimal], [IncludeLeadingDigit], [UseParensForNegativeNumbers], [GroupDigits])

l  “Expression”: 통화 형식으로 변환할 숫자입니다.

l  “NumDigitsAfterDecimal”(선택적): 소수점 이하 자릿수를 지정합니다. 기본값은 2입니다.

l  “IncludeLeadingDigit”(선택적): 0보다 큰 값이고 1보다 작은 숫자를 표시할 때 선행 0을 포함할지 여부를 지정합니다. 기본값은 True입니다.

l  “UseParensForNegativeNumbers”(선택적): 음수를 괄호로 표시할지 여부를 지정합니다. 기본값은 False입니다.

l  “GroupDigits”(선택적): 숫자를 천 단위로 그룹화할지 여부를 지정합니다. 기본값은 True입니다.

 

 

2. 기본 통화 형식 변환

 

예제에서는 1234.5678이라는 숫자를 “FormatCurrency” 함수를 이용해 통화 형식으로 변환합니다. 실행 결과, 메시지 박스에는 "\1,235"이 출력됩니다. 

Sub FormatCurrencyExample()
    Dim value As Double
    value = 1234.5678
    MsgBox FormatCurrency(value)
End Sub

 

 

3. 소수점 이하 자릿수 지정 예제

 

예제에서는 NumDigitsAfterDecimal 인수를 이용해서 소수점 자리수를 제한합니다. 1234.5678이라는 숫자를 소수점 이하 3자리까지 표시하는 통화 형식으로 변환합니다. 실행 결과, 메시지 박스에는 "\1,234.568"이 출력됩니다이렇게 “FormatCurrency” 함수를 사용하면 다양한 통화 형식의 표현을 쉽게 처리할 수 있습니다. 

Sub FormatCurrencyExample()
    Dim value As Double
    value = 1234.5678
    MsgBox FormatCurrency(value, 3)
End Sub

 

 

4. 선행하는 숫자의 0 을 제외하고 표현하기

 

예제에서는 0.5678이라는 숫자를 “FormatCurrency” 함수의 “IncludeLeadingDigit” 인수를 이용해 통화 형식으로 변환하되, 선행 0을 포함하지 않도록 지정합니다. 실행 결과, 메시지 박스에는 "\.57"이 출력됩니다. “IncludeLeadingDigit” 값이 False 이면 0 을 제외합니다. 

Sub FormatCurrencyExample()
    Dim value As Double
    value = 0.5678
    MsgBox FormatCurrency(value, 2, False)
End Sub

 

 

5. 음수를 괄호로 표시할 것인지 결정

 

“UseParensForNegativeNumbers” 인수를 사용해서 음수를 괄호로 표시할 것인지 정할 수 있습니다. 예제에서는  -1234.5678이라는 숫자를 “FormatCurrency” 함수를 이용해 통화 형식으로 변환하되, 음수를 괄호로 표시하도록 지정합니다. 실행 결과, 메시지 박스에는 "(\1,235)"이 출력합니다. 

Sub FormatCurrencyExample()
    Dim value As Double
    value = -1234.5678
    MsgBox FormatCurrency(value, -1, -1, True)
End Sub

 

 

6. 천 단위 쉼표 표시 여부

 

예제에서는 1234567.89라는 숫자를 “FormatCurrency” 함수의 “GroupDigits” 인수를 사용해서 통화 형식으로 변환하되, 천 단위로 그룹화하지 않도록 지정합니다. 실행 결과, 메시지 박스에는 "\1234567"이 출력됩니다. 천 단위로 쉼표를 표시하고 싶다면  True 를 입력합니다. 

Sub FormatCurrencyExample()
    Dim value As Double
    value = 1234567.89
    MsgBox FormatCurrency(value, -1, -1, -1, False)
End Sub

 

반응형
Posted by 녹두장군1
,