On-screen text
Number to Words
Saved to Drive
File Edit View Insert Format Data Tools Extensions Help
A2
2650.65
2650.65
Loading...
Untitled spreadsheet
Type "/Dropdown" to insert a dropdown menu
Sheet1
Untitled project
Files
Code.gs
Libraries
Services
Go to Definition
Go to References
Go to Symbol...
Peek
Rename Symbol
Change All Occurrences
Format Document
Cut
Copy
Paste
Command Palette
function numberToWords(number) {
var units = ["", "", "", "", "", "", "", "", "", ""];
var teens = ["", "", "", "", "", "", "", "", "", ""];
var thousands = ["", "", "", ""];
if (number === 0) return "";
function convertHundreds(num) {
var result = "";
if (num >= 200 && num < 300) {
result += "";
} else if (num >= 100) {
result += units[Math.floor(num / 100)] + "";
num = num % 100;
}
if (num >= 10 && num < 20) {
result += teens[num - 10] + "";
} else {
result += tens[Math.floor(num / 10)] + "";
result += units[num % 10] + "";
}
return result.trim();
}
var integerPart = Math.floor(number);
var fractionalPart = Math.round(number - integerPart) * 100;
var words = "";
var scale = 0;
while (integerPart > 0) {
var chunk = integerPart % 1000;
if (chunk > 0) {
words = convertHundreds(chunk) + (scale > 0 ? " " + thousands[scale] : "") + " " + words;
}
integerPart = Math.floor(integerPart / 1000);
scale++;
}
words = words.trim() + "";
if (fractionalPart > 0) {
words += " " + convertHundreds(fractionalPart) + "";
}
return words.trim();
}
function convertNumberToWords(number) {
return numberToWords(number);
}
Run
Debug
No functions
Execution log
Code.gs
function myfunction() {
}