ROMAN function
PRO
The ROMAN
function in Jspreadsheet Formulas Pro is a useful tool that changes an Arabic numeral into a Roman numeral. If you input a number into this function, it will output the equivalent value in Roman numerals. It's a simple and efficient way to convert numbers into a different numerical system, which can be particularly useful in specific fields or for educational purposes. This function makes it easy to understand and utilize Roman numerals in your Jspreadsheet tasks.
Documentation
Converts an Arabic numeral to a Roman numeral.
Category
Math and trigonometry
Syntax
ROMAN(number, [style])
Parameter | Description |
---|---|
number |
The Arabic numeral you want to convert to a Roman numeral. |
style |
Optional. A number that determines the type of Roman numeral to use in the conversion. If omitted or set to 0, ROMAN uses the classic Roman numeral form. |
Behavior
The ROMAN
function is used to convert a number into its Roman numeral equivalent. The function takes two arguments. The first one is the number that you want to convert into Roman numerals and the second optional one is a number (from 0 to 4) that determines the type of Roman numerals you want to use.
Here's how it handles different types of input:
- Empty cells: If the cell reference is empty, the function will return
#VALUE!
error. - Text: If the cell reference contains text, the function will return
#VALUE!
error. - Booleans: Boolean values are treated as numbers (TRUE = 1, FALSE = 0). TRUE returns "I", while FALSE produces a #NUM! error.
- Errors: If the cell reference contains an error, the function will return that error.
- Numbers: The function works well with numbers. The number should be between 1 and 3999.
Common Errors
Error | Description |
---|---|
#VALUE! | This error occurs if the input cell is empty, contains text, or contains a boolean value. |
#NUM! | This error occurs if the input number is less than 0 or greater than 3999. |
#N/A | This error occurs if the second argument is not between 0 and 4. |
Best practices
- Always ensure the input number is within the acceptable range (1 to 3999), else the function will return
#NUM!
error.- Use the second argument to control the form of Roman numerals. If you want the classic form, use 0. If you want the more concise form, use 4.
- Avoid referring to cells containing text or boolean values as the function will return a
#VALUE!
error.- It is best to use the
ROMAN
function when you need to display numbers in Roman numeral form for aesthetic or formatting purposes.
Usage
A few examples using the ROMAN function.
ROMAN(10) → "X"
ROMAN(3999) → "MMMCMXCIX"
ROMAN(2021, 0) → "MMXXI" (classic form)
ROMAN(TRUE) → "I" (TRUE is treated as 1)
Interactive Spreadsheet Demo
<html>
<script src="https://jspreadsheet.com/v11/jspreadsheet.js"></script>
<script src="https://jsuites.net/v5/jsuites.js"></script>
<link rel="stylesheet" href="https://jsuites.net/v5/jsuites.css" type="text/css" />
<link rel="stylesheet" href="https://jspreadsheet.com/v11/jspreadsheet.css" type="text/css" />
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Material+Icons" />
<script src="https://cdn.jsdelivr.net/npm/@jspreadsheet/formula-pro/dist/index.min.js"></script>
<div id="spreadsheet"></div>
<script>
// Set your JSS license key (The following key only works for one day)
jspreadsheet.setLicense('MmM0NDUzZmIwZmJkNzI5OGY5YTIxYjJlNzZmYjQwZmNkMjA1ZmQxNGNmYjE0YWUwNGM0NjdkNjgyOTQ3NzllN2UxNjEwOTg3MzQ4OTM2NTczZDVmZTRhYmQ3ZmIyZGJkNmRkNjc0ZjM4MzU0M2I2MjRjOTg1ZDdkYTIxOTVlNDcsZXlKamJHbGxiblJKWkNJNklpSXNJbTVoYldVaU9pSktjM0J5WldGa2MyaGxaWFFpTENKa1lYUmxJam94TnpVMk56a3pNRGt5TENKa2IyMWhhVzRpT2xzaWFuTndjbVZoWkhOb1pXVjBMbU52YlNJc0ltTnZaR1Z6WVc1a1ltOTRMbWx2SWl3aWFuTm9aV3hzTG01bGRDSXNJbU56WWk1aGNIQWlMQ0p6ZEdGamEySnNhWFI2TG1sdklpd2lkMlZpWTI5dWRHRnBibVZ5TG1sdklpd2lkMlZpSWl3aWJHOWpZV3hvYjNOMElsMHNJbkJzWVc0aU9pSXpOQ0lzSW5OamIzQmxJanBiSW5ZM0lpd2lkamdpTENKMk9TSXNJbll4TUNJc0luWXhNU0lzSW1Ob1lYSjBjeUlzSW1admNtMXpJaXdpWm05eWJYVnNZU0lzSW5CaGNuTmxjaUlzSW5KbGJtUmxjaUlzSW1OdmJXMWxiblJ6SWl3aWFXMXdiM0owWlhJaUxDSmlZWElpTENKMllXeHBaR0YwYVc5dWN5SXNJbk5sWVhKamFDSXNJbkJ5YVc1MElpd2ljMmhsWlhSeklpd2lZMnhwWlc1MElpd2ljMlZ5ZG1WeUlpd2ljMmhoY0dWeklpd2labTl5YldGMElsMHNJbVJsYlc4aU9uUnlkV1Y5');
// Set the extensions
jspreadsheet.setExtensions({ formula });
// Create a new spreadsheet
jspreadsheet(document.getElementById('spreadsheet'), {
worksheets: [{
data: [
[
"Arabic Number",
"Roman Numeral",
"Style"
],
[
1994,
"=ROMAN(A2)",
"=ROMAN(A2,1)"
],
[
2023,
"=ROMAN(A3)",
"=ROMAN(A3,2)"
],
[
456,
"=ROMAN(A4)",
"=ROMAN(A4,0)"
],
[
3999,
"=ROMAN(A5)",
"=ROMAN(A5,3)"
]
]
}]
});
</script>
</html>
import React, { useRef } from "react";
import { Spreadsheet, Worksheet, jspreadsheet } from "@jspreadsheet/react";
import formula from "@jspreadsheet/formula-pro";
import "jsuites/dist/jsuites.css";
import "jspreadsheet/dist/jspreadsheet.css";
// Set license
jspreadsheet.setLicense('MmM0NDUzZmIwZmJkNzI5OGY5YTIxYjJlNzZmYjQwZmNkMjA1ZmQxNGNmYjE0YWUwNGM0NjdkNjgyOTQ3NzllN2UxNjEwOTg3MzQ4OTM2NTczZDVmZTRhYmQ3ZmIyZGJkNmRkNjc0ZjM4MzU0M2I2MjRjOTg1ZDdkYTIxOTVlNDcsZXlKamJHbGxiblJKWkNJNklpSXNJbTVoYldVaU9pSktjM0J5WldGa2MyaGxaWFFpTENKa1lYUmxJam94TnpVMk56a3pNRGt5TENKa2IyMWhhVzRpT2xzaWFuTndjbVZoWkhOb1pXVjBMbU52YlNJc0ltTnZaR1Z6WVc1a1ltOTRMbWx2SWl3aWFuTm9aV3hzTG01bGRDSXNJbU56WWk1aGNIQWlMQ0p6ZEdGamEySnNhWFI2TG1sdklpd2lkMlZpWTI5dWRHRnBibVZ5TG1sdklpd2lkMlZpSWl3aWJHOWpZV3hvYjNOMElsMHNJbkJzWVc0aU9pSXpOQ0lzSW5OamIzQmxJanBiSW5ZM0lpd2lkamdpTENKMk9TSXNJbll4TUNJc0luWXhNU0lzSW1Ob1lYSjBjeUlzSW1admNtMXpJaXdpWm05eWJYVnNZU0lzSW5CaGNuTmxjaUlzSW5KbGJtUmxjaUlzSW1OdmJXMWxiblJ6SWl3aWFXMXdiM0owWlhJaUxDSmlZWElpTENKMllXeHBaR0YwYVc5dWN5SXNJbk5sWVhKamFDSXNJbkJ5YVc1MElpd2ljMmhsWlhSeklpd2lZMnhwWlc1MElpd2ljMlZ5ZG1WeUlpd2ljMmhoY0dWeklpd2labTl5YldGMElsMHNJbVJsYlc4aU9uUnlkV1Y5');
// Set the extensions
jspreadsheet.setExtensions({ formula });
export default function App() {
// Spreadsheet array of worksheets
const spreadsheet = useRef();
// Worksheet data
const data = [
[
"Arabic Number",
"Roman Numeral",
"Style"
],
[
1994,
"=ROMAN(A2)",
"=ROMAN(A2,1)"
],
[
2023,
"=ROMAN(A3)",
"=ROMAN(A3,2)"
],
[
456,
"=ROMAN(A4)",
"=ROMAN(A4,0)"
],
[
3999,
"=ROMAN(A5)",
"=ROMAN(A5,3)"
]
];
// Render component
return (
<Spreadsheet ref={spreadsheet}>
<Worksheet data={data} />
</Spreadsheet>
);
}
<template>
<Spreadsheet ref="spreadsheet">
<Worksheet :data="data" />
</Spreadsheet>
</template>
<script>
import { Spreadsheet, Worksheet, jspreadsheet } from "@jspreadsheet/vue";
import "jsuites/dist/jsuites.css";
import "jspreadsheet/dist/jspreadsheet.css";
import formula from "@jspreadsheet/formula-pro";
// Set license
jspreadsheet.setLicense('MmM0NDUzZmIwZmJkNzI5OGY5YTIxYjJlNzZmYjQwZmNkMjA1ZmQxNGNmYjE0YWUwNGM0NjdkNjgyOTQ3NzllN2UxNjEwOTg3MzQ4OTM2NTczZDVmZTRhYmQ3ZmIyZGJkNmRkNjc0ZjM4MzU0M2I2MjRjOTg1ZDdkYTIxOTVlNDcsZXlKamJHbGxiblJKWkNJNklpSXNJbTVoYldVaU9pSktjM0J5WldGa2MyaGxaWFFpTENKa1lYUmxJam94TnpVMk56a3pNRGt5TENKa2IyMWhhVzRpT2xzaWFuTndjbVZoWkhOb1pXVjBMbU52YlNJc0ltTnZaR1Z6WVc1a1ltOTRMbWx2SWl3aWFuTm9aV3hzTG01bGRDSXNJbU56WWk1aGNIQWlMQ0p6ZEdGamEySnNhWFI2TG1sdklpd2lkMlZpWTI5dWRHRnBibVZ5TG1sdklpd2lkMlZpSWl3aWJHOWpZV3hvYjNOMElsMHNJbkJzWVc0aU9pSXpOQ0lzSW5OamIzQmxJanBiSW5ZM0lpd2lkamdpTENKMk9TSXNJbll4TUNJc0luWXhNU0lzSW1Ob1lYSjBjeUlzSW1admNtMXpJaXdpWm05eWJYVnNZU0lzSW5CaGNuTmxjaUlzSW5KbGJtUmxjaUlzSW1OdmJXMWxiblJ6SWl3aWFXMXdiM0owWlhJaUxDSmlZWElpTENKMllXeHBaR0YwYVc5dWN5SXNJbk5sWVhKamFDSXNJbkJ5YVc1MElpd2ljMmhsWlhSeklpd2lZMnhwWlc1MElpd2ljMlZ5ZG1WeUlpd2ljMmhoY0dWeklpd2labTl5YldGMElsMHNJbVJsYlc4aU9uUnlkV1Y5');
// Set the extensions
jspreadsheet.setExtensions({ formula });
export default {
components: {
Spreadsheet,
Worksheet,
},
data() {
// Worksheet data
const data = [
[
"Arabic Number",
"Roman Numeral",
"Style"
],
[
1994,
"=ROMAN(A2)",
"=ROMAN(A2,1)"
],
[
2023,
"=ROMAN(A3)",
"=ROMAN(A3,2)"
],
[
456,
"=ROMAN(A4)",
"=ROMAN(A4,0)"
],
[
3999,
"=ROMAN(A5)",
"=ROMAN(A5,3)"
]
]
return {
data
};
}
}
</script>
import { Component, ViewChild, ElementRef } from "@angular/core";
import jspreadsheet from "jspreadsheet";
import * as formula from "@jspreadsheet/formula-pro";
// Set your JSS license key (The following key only works for one day)
jspreadsheet.setLicense('MmM0NDUzZmIwZmJkNzI5OGY5YTIxYjJlNzZmYjQwZmNkMjA1ZmQxNGNmYjE0YWUwNGM0NjdkNjgyOTQ3NzllN2UxNjEwOTg3MzQ4OTM2NTczZDVmZTRhYmQ3ZmIyZGJkNmRkNjc0ZjM4MzU0M2I2MjRjOTg1ZDdkYTIxOTVlNDcsZXlKamJHbGxiblJKWkNJNklpSXNJbTVoYldVaU9pSktjM0J5WldGa2MyaGxaWFFpTENKa1lYUmxJam94TnpVMk56a3pNRGt5TENKa2IyMWhhVzRpT2xzaWFuTndjbVZoWkhOb1pXVjBMbU52YlNJc0ltTnZaR1Z6WVc1a1ltOTRMbWx2SWl3aWFuTm9aV3hzTG01bGRDSXNJbU56WWk1aGNIQWlMQ0p6ZEdGamEySnNhWFI2TG1sdklpd2lkMlZpWTI5dWRHRnBibVZ5TG1sdklpd2lkMlZpSWl3aWJHOWpZV3hvYjNOMElsMHNJbkJzWVc0aU9pSXpOQ0lzSW5OamIzQmxJanBiSW5ZM0lpd2lkamdpTENKMk9TSXNJbll4TUNJc0luWXhNU0lzSW1Ob1lYSjBjeUlzSW1admNtMXpJaXdpWm05eWJYVnNZU0lzSW5CaGNuTmxjaUlzSW5KbGJtUmxjaUlzSW1OdmJXMWxiblJ6SWl3aWFXMXdiM0owWlhJaUxDSmlZWElpTENKMllXeHBaR0YwYVc5dWN5SXNJbk5sWVhKamFDSXNJbkJ5YVc1MElpd2ljMmhsWlhSeklpd2lZMnhwWlc1MElpd2ljMlZ5ZG1WeUlpd2ljMmhoY0dWeklpd2labTl5YldGMElsMHNJbVJsYlc4aU9uUnlkV1Y5');
// Set the extensions
jspreadsheet.setExtensions({ formula });
@Component({
standalone: true,
selector: "app-root",
template: `<div #spreadsheet></div>`
})
export class AppComponent {
@ViewChild("spreadsheet") spreadsheet: ElementRef;
// Worksheets
worksheets: jspreadsheet.worksheetInstance[];
// Create a new data grid
ngAfterViewInit() {
// Create spreadsheet
this.worksheets = jspreadsheet(this.spreadsheet.nativeElement, {
worksheets: [{
data: [
[
"Arabic Number",
"Roman Numeral",
"Style"
],
[
1994,
"=ROMAN(A2)",
"=ROMAN(A2,1)"
],
[
2023,
"=ROMAN(A3)",
"=ROMAN(A3,2)"
],
[
456,
"=ROMAN(A4)",
"=ROMAN(A4,0)"
],
[
3999,
"=ROMAN(A5)",
"=ROMAN(A5,3)"
]
]
}]
});
}
}