Financial functions

DOLLARFR

Matches all 3,645 recorded answers

Recorded: 3,641 in the answer bank and 4 workbook cells. How we measure this · See the Rust code

Local names in 40 languages
LanguageName in Excel
ArabicDOLLARFR
BulgarianDOLLARFR
CzechDOLLARFR
DanishKR.BRØK
GermanDOLLARFR
GreekDOLLARFR
English (Australia)DOLLARFR
English (United Kingdom)DOLLARFR
English (United States)DOLLARFR
SpanishMONEDA.FRAC
EstonianDOLLARFR
FinnishVALUUTTA.MURTO
FrenchPRIX.FRAC
HebrewDOLLARFR
CroatianDOLLARFR
HungarianFORINT.TÖRT
IndonesianDOLLARFR
ItalianDOLLARFR
JapaneseDOLLARFR
KoreanDOLLARFR
LithuanianDOLLARFR
LatvianDOLLARFR
NorwegianDOLLARFR
DutchDOLLAR.BR
PolishCENA.UŁAM
Portuguese (Brazil)DOLLARFR
Portuguese (Portugal)MOEDAFRA
RomanianDOLARFR
RussianРУБЛЬ.ДРОБЬ
SlovakDOLLARFR
SlovenianDOLLARFR
Serbian (Latin)DOLLARFR
SwedishBRÅK
ThaiDOLLARFR
TurkishLİRAKES işlevi
UkrainianDOLLARFR
VietnameseDOLLARFR
Chinese (Simplified)DOLLARFR
Chinese (Hong Kong)DOLLARFR
Chinese (Traditional)DOLLARFR

Names from Microsoft's support site.

What it does

DOLLARFR(decimal_dollar, fraction)

DOLLARFR(decimal_dollar,fraction) converts an ordinary decimal amount to Excel’s fractional-quote numeric encoding. The digits after the decimal point encode a numerator over the supplied denominator; they are not an ordinary decimal fraction of the amount.

Try it

Input cells (optional)

Example: {"B2": 3, "B3": 4}. A1 holds the formula. Other cells need values before a formula can read them.

Enter a formula, then calculate.

Runs locally in your browser with OneCalc. Its answer may differ from Excel. Use English function names and commas between arguments.

=DOLLARFR(12.375,32) returns about 12.12. The fraction 0.375 is twelve thirty-seconds, so the quote is twelve and 12/32. Reading 12.12 as an ordinary decimal amount would give a different value.

Quirks

The denominator is truncated. A negative denominator gives #NUM!; a denominator that truncates to zero gives #DIV/0!. The output is a number, not text containing a slash. Numerator digit width depends on the denominator’s decimal scale, and negative amounts need a consistent toward-zero integer part.

A power-of-ten denominator uses that power itself as the decimal scale, rather than one more digit position. The current helper therefore has an identity transform at denominators one and ten. It does not round the encoded numerator to an integer; arbitrary decimal inputs can encode fractional numerators.

How to implement

Split the admitted decimal amount into its toward-zero integer part and signed fractional part. For denominator f choose the kernel’s decimal scale 10^ceil(log10(f)); multiply the fractional part by f, divide by that scale and add the integer part. For f=32 the scale is 100, so 12+(0.375*32)/100=12.12. The current helper constructs the scale by multiplying by ten until it is at least the denominator, rather than taking a floating-point logarithm; use its retained code for those boundaries rather than assuming all algebraic orderings agree.

Rust code

Show the CalcFunc source of this function

Quoted from the public repository DnaCalc/DnaCalc, crates calc-func and calc-fml, at commit 9e1884369a67. Comments are the source's own. A kernel shared with other functions appears once, on its module page.

DOLLARFR · 6 lines · calc-func/src/catalogue/financial.rs on GitHub
29 dollarfr_fn "DOLLARFR" (2, 2) [V "decimal_dollar", V "fraction"] |s, a, sv| {
    if a.iter().any(CalcValue::is_missing) {
        return fail(W::NA);
    }
    out(s, dollar::dollarfr_kernel(dollar_num(s, a, 0)?, dollar_num(s, a, 1)?))
}
dollarfr_kernel · 7 lines · calc-func/src/ported/dollar_fraction_family.rs on GitHub
pub fn dollarfr_kernel(number: f64, fraction: f64) -> Result<f64, WorksheetErrorCode> {
    let denominator = normalized_fraction_denominator(fraction)?;
    let scale = decimal_scale(denominator);
    let whole = number.trunc();
    let fractional = number - whole;
    Ok(whole + fractional * denominator / scale)
}

Kernels shared with other functions

Argument and result plumbing

  • fail catalogue/kit
  • num catalogue/kit
  • out catalogue/kit

No implementation has been published with a Handbook test suite for this function.

Version differences

The recorded environments below distinguish a reading from a same-input comparison. Counts describe captured inputs in each environment; overlapping captures and comparisons are not totals of unique worksheet calls.

Excel 16.0 buildPlatform and CPUCaptured inputs
20430Windows, 64-bit, AMD Ryzen 7 4800H with Radeon Graphics2,406
20430Windows, 64-bit, CPU not recorded1,235

The record contains no same-input comparison between these environments. Reading different inputs on different builds does not establish either a version change or cross-build agreement.

Recorded environments and comparison details.

Excel 16.0 build 20430

Windows, 64-bit, AMD Ryzen 7 4800H with Radeon Graphics

2,406 captured inputs are indexed for this environment. Capture dates: 2026-09-25 to 2026-09-25. This is a reading count, not a comparison with another build.

Excel 16.0 build 20430

Windows, 64-bit, CPU not recorded

1,235 captured inputs are indexed for this environment. Capture dates: 2026-09-29 to 2026-09-29. This is a reading count, not a comparison with another build.

Alternatives

DOLLARDE converts the quote back to an ordinary amount; TEXT can display a conventional written fraction when no numeric quote encoding is needed.

Named variants

No named variants are recorded yet.

Suggest a correction or contribute an implementation · For agents