The VBA FORMATCURRENCY function is listed under the data type conversion category of VBA functions. When you use it in a VBA code, it returns a string by applying currency format to a number. In simple words, you can convert a number into a value in which currency format is applied.
Syntax
FormatCurrency(Expression,[NumDigitsAfterDecimal],[IncludeLeadingDigit],[UseParensForNegativeNumbers],[GroupDigits])
Arguments
- Expression: The numeric value which you want to format as currency.
- [NumDigitsAfterDecimal]: A numeric value to specify the decimals [This is an optional argument and if omitted -1 by default].
- [IncludeLeadingDigit]: An enumeration value to specify whether a leading zero should be displayed [This is an optional argument and if omitted vbUseDefault by default].
- vbFalse: To not to a leading zero.
- vbTrue: Display a leading zero.
- vbUseDefault: Use the default settings.
- [UseParensForNegativeNumbers]: An enumeration value to specify whether negative numbers should be encased in parentheses [This is an optional argument and if omitted vbUseDefault by default].
- vbFalse: To not encase negative numbers in parentheses.
- vbTrue: Encase negative numbers in parentheses.
- vbUseDefault: Use the default settings.
- [GroupDigits]: n enumeration value to specify whether the number should be grouped (into thousands, etc.), using the group delimiter that is specified on the computer’s regional settings [This is an optional argument, and if omitted vbUseDefault by default].
- vbFalse: To not use group digits.
- vbTrue: To use group digits.
- vbUseDefault: Use the default computer settings.
Example
To practically understand how to use VBA FORMATCURRENCY function, you need to go through the below example where we have written a vba code by using it:
Sub example_FORMATCURRENCY()
Range("B1").Value = FormatCurrency(Range("A1"))
End Sub
In the above code, we have used FORMATCURRENCY to convert the value in cell A1 into a currency value and it has returned it in cell B1 with the dollar sign.
Notes
- The currency symbol used depends on system settings.
- If the value specified is a value other than a number or a string that can’t be recognized as a number, VBA will return the run-time 13 error.
- Back to the Excel VBA / VBA Functions