← Functions
dollartextfunctionsbeginner

Excel DOLLAR Function

DOLLAR converts a number into text formatted as currency, rounded to the decimal places you specify.

DOLLAR converts a number into text formatted as currency, using the format and currency symbol set by your computer's regional settings. The result looks like a price: dollar sign, thousands separator, two decimal places. But it's text, not a number, so you can't add it, subtract it, or use it in a SUM formula without converting it back first.

Syntax

=DOLLAR(number, [decimals])
ParameterRequiredDescription
numberYesThe value you want formatted as currency text. Usually a cell reference, but you can enter a number directly.
decimalsNoHow many digits to show to the right of the decimal point. Defaults to 2 if you leave it out. A negative number rounds to the left of the decimal point instead.

DOLLAR always returns text, even though the result looks like a number. If you feed a DOLLAR result into SUM, AVERAGE, or any arithmetic formula, Excel either throws an error or silently treats it as zero. If you need to do math later, keep the raw number in one cell and use DOLLAR only for display or reporting.

Basic Example

You're building an invoice summary and want the total shown as formatted currency text inside a sentence, not just a formatted number in a cell.

=DOLLAR(A2, 2)

// A2 = the invoice total, for example 4238.5
// 2  = round to 2 decimal places

A2 holds 4238.5. DOLLAR rounds it to two decimals, adds the currency symbol and thousands separator, and returns the text string "$4,238.50". That string can now be dropped straight into a sentence with &, something a plain number format can't do on its own.

How DOLLAR Works

It always returns text

DOLLAR's output is a text string, not a number, even when it displays digits and a dollar sign. Type =ISNUMBER(DOLLAR(1000)) in a cell and it returns FALSE. That distinction matters the moment you try to reuse the result in a calculation.

Decimals controls rounding, not just display

The decimals argument doesn't just trim what's shown; it actually rounds the underlying value before converting it to text. =DOLLAR(1234.567, 1) returns "$1,234.6", rounded up at the second decimal and displayed with exactly one digit after the decimal point. Set decimals to a negative number and DOLLAR rounds to the left of the decimal point instead: =DOLLAR(1234.567, -2) returns "$1,200", rounded to the nearest hundred.

The currency symbol follows your system, not the formula

DOLLAR doesn't hardcode a dollar sign. It pulls whatever currency symbol and separator style are set in your computer's regional settings. Open the same workbook on a machine configured for French Canadian settings and the identical formula might return 1 234,50 $ instead of $1,234.50.

Thousands separators are added automatically

DOLLAR inserts the thousands separator that matches your locale, whether that's a comma, a period, or a space. You don't control this with an argument; it's tied to the same regional settings that control the currency symbol.

Common Use Cases

Building a narrative summary sentence

You want a formula-driven sentence for a management report instead of a bare number in a cell.

="Total revenue this quarter: " & DOLLAR(SUM(sales_range), 0)

// SUM(sales_range) = total of all sales figures
// 0 = no decimal places, whole dollars only

Returns something like "Total revenue this quarter: $482,600", ready to paste into an email or a text box on a dashboard.

Rounding large figures for an executive summary

Finance leadership wants revenue rounded to the nearest thousand, not down to the cent.

=DOLLAR(revenue_total, -3)   // rounds to the nearest $1,000

If revenue_total is 4,872,340, this returns "$4,872,000". Negative decimals are the fastest way to strip precision you don't need in a summary view.

Combining DOLLAR with TEXTJOIN for invoice line items

You're generating a line of invoice text that combines a product name with its formatted price.

=TEXTJOIN(" - ", TRUE, product_name, DOLLAR(unit_price, 2))

// product_name = text label for the line item
// DOLLAR(unit_price, 2) = price formatted as currency text, 2 decimals

Returns "Wireless Mouse - $24.99", built entirely from formulas rather than typed manually.

Displaying rounded prices in a product catalog export

You're exporting a product feed where each price needs to show as clean currency text, not a raw number Excel might reformat unpredictably once it hits a CSV.

=DOLLAR(unit_price, 2)   // "$149.99" instead of a raw decimal like 149.99

This matters when the feed is consumed by a system expecting a formatted string, not a locale-dependent number.

Handling Errors

DOLLAR returns #VALUE! when the number argument isn't numeric and can't be converted to a number.

Common causes of #VALUE!:

  • number references a cell containing text like "N/A" or "Pending"
  • number points to an empty text string ("") rather than a blank cell
  • decimals is text instead of a numeric value, such as "two" instead of 2
  • number references a date stored as text rather than a real date serial number
=IF(ISNUMBER(A2), DOLLAR(A2, 2), "Invalid amount")

Skip IFERROR here. It would swallow every error type, including a typo in the decimals argument, and it can't distinguish a genuine #VALUE! from a cell that's simply blank. Checking with ISNUMBER first only flags the one case you actually care about: non-numeric input.

Notes & Gotchas

What is the DOLLAR function in Excel?

DOLLAR is one of Excel's text functions. It converts a number into text formatted as currency, rounding it to a specified number of decimal places along the way. It's built for display and reporting, not for calculations.

How is DOLLAR different from formatting a cell as currency?

Applying the Currency number format through the Format Cells dialog changes only how a number looks. The underlying value stays numeric, so you can still add it, average it, or reference it in another calculation. DOLLAR does the opposite: it produces an actual text string, so the result can't be used in math without converting it back with VALUE or NUMBERVALUE.

Can I change the currency symbol used by the DOLLAR function?

Not directly through an argument. The symbol comes from your computer's regional and language settings, not from anything you type in the formula. To force a specific symbol regardless of locale, use TEXT with a custom format code instead, for example =TEXT(A2, "€#,##0.00").

What does the decimals argument do, including negative values?

decimals rounds the number before converting it to text. Positive values round to that many places right of the decimal point; omit it entirely and DOLLAR assumes 2. Negative values round to the left of the decimal point, so -1 rounds to the nearest 10, -2 to the nearest 100, and so on.

Will DOLLAR show a different currency symbol on other computers?

Yes. DOLLAR reads the currency symbol and separator style from whichever computer opens the file, not from the computer that built the formula. Send a workbook built on a US-locale machine to a colleague running UK regional settings, and the same formula can switch from $ to £ with no warning.

Why does DOLLAR return #VALUE!?

The most common cause is a number argument that points to text Excel can't interpret as a number, like a status label or a blank text string. Check the referenced cell first; if it contains anything other than a genuine number, DOLLAR has nothing to convert.

Is the DOLLAR function related to the dollar sign ($) in cell references?

No, and this is a frequent source of confusion. The $ you type in a reference like $A$1 locks that reference so it doesn't shift when copied; it has nothing to do with currency formatting. The DOLLAR function shares the name only because both concepts involve the word "dollar," not because they interact.

What happens if I try to use DOLLAR's output in a calculation?

Excel either returns #VALUE! or silently ignores the text depending on the formula. =DOLLAR(A2,2)+10 throws #VALUE! because you can't add text to a number. If you need the rounded number for further math, wrap the original value in ROUND instead, or convert DOLLAR's text output back with =VALUE(DOLLAR(A2,2)).

Related Functions

FunctionUse this when...
TEXTYou need full control over the format, including custom currency symbols, dates, or percentages.
FIXEDYou want rounded text output without a currency symbol attached.
VALUEYou need to convert DOLLAR's text output back into a real number for calculations.