Spreadsheet Formula Walkthrough

How to Convert Numbers to Roman in Excel

The complete guide to Microsoft Excel's built-in =ROMAN() and =ARABIC() functions. Test calculations live, master the 5 conciseness forms, and copy ready-to-use VBA automation macros.

Live Interactive Simulator

Excel Formula Playground

Simulates exact Microsoft Excel engine calculation
fx =ROMAN(A2, 0)
# A (Input Integer) B (ROMAN Output) C (Reverse =ARABIC(B2))
2 1994 MCMXCIV 1994

1. Excel ROMAN Function Syntax

In Microsoft Excel (versions 2007 through Microsoft 365), the syntax is:

=ROMAN(number, [form])
  • number (Required): The Arabic integer you want to convert. Must be between 1 and 3,999.
  • form (Optional): A number from 0 to 4 that specifies the type of Roman numeral:

2. The 5 Form Options Compared

While Form 0 adheres to classical subtractive rules, higher forms relax prefix rules to generate more concise abbreviations:

Number Form 0 (Classic) Form 1 (Concise) Form 2 Form 3 Form 4 (Simplified)
499 CDXCIX LDVLIV XID VD ID
999 CMXCIX LMVLIV XIM VM IM
1999 MCMXCIX MLMVLIV MXIM MVM MIM
45 XLV XLV XLV VL VL
95 XCV XCV XCV VC VC

3. Converting Roman Numerals Back to Numbers: =ARABIC()

Excel introduced the companion =ARABIC(text) function to reverse Roman numerals back into decimal digits:

=ARABIC("MCMXCIV")     → Output: 1994
=ARABIC(B2)            → Reads Roman numeral in cell B2

4. Excel VBA Macro for Converting an Entire Column

Press Alt + F11 in Excel, insert a Module, and paste this macro to convert selected cells instantly:

Sub ConvertSelectionToRoman()
    Dim cell As Range
    For Each cell In Selection
        If IsNumeric(cell.Value) And cell.Value > 0 And cell.Value <= 3999 Then
            cell.Offset(0, 1).Value = Application.WorksheetFunction.Roman(cell.Value, 0)
        End If
    Next cell
End Sub

Excel Roman Numerals FAQs

What is the formula to convert numbers to Roman numerals in Excel?

The standard Excel formula is =ROMAN(number, [form]). For example, =ROMAN(1994) outputs MCMXCIV.

What is the [form] argument in the Excel ROMAN function?

The form argument specifies the level of conciseness from 0 to 4: 0 or FALSE (Classic strict subtractive), 1 (More concise), 2 (Concise), 3 (Most concise), and 4 or TRUE (Simplified). Form 0 is the default and matches standard classical Roman numerals.

How do you convert Roman numerals back to numbers in Excel?

Use the =ARABIC(text) formula. For example, if cell A1 contains MCMXCIV, the formula =ARABIC(A1) returns 1994.

Why does Excel return a #VALUE! error with ROMAN()?

Excel returns #VALUE! if the input number is negative, zero, or greater than 3,999. The ROMAN function only accepts integers between 1 and 3,999.