function convertCurrency(currencyDigits) { // Constants: var MAXIMUM_NUMBER = 99999999999.99; // Predefine the radix characters and currency symbols for output: var CN_ZERO = "零"; var CN_ONE = "壹"; var CN_TWO = "贰"; var CN_THREE = "叁"; var CN_FOUR = "肆"; var CN_FIVE = "伍"; var CN_SIX = "陆"; var CN_SEVEN = "柒"; var CN_EIGHT = "捌"; var CN_NINE = "玖"; var CN_TEN = "拾"; var CN_HUNDRED = "佰"; var CN_THOUSAND = "仟"; var CN_TEN_THOUSAND = "万"; var CN_HUNDRED_MILLION = "亿"; var CN_SYMBOL = ""; var CN_DOLLAR = "元"; var CN_TEN_CENT = "角"; var CN_CENT = "分"; var CN_INTEGER = "整"; // Variables: var integral; // Represent integral part of digit number. var decimal; // Represent decimal part of digit number. var outputCharacters; // The output result. var parts; var digits, radices, bigRadices, decimals; var zeroCount; var i, p, d; var quotient, modulus; // Validate input string: currencyDigits = currencyDigits.toString(); if (currencyDigits == "") { alert("你没有输入,请输入数字"); return ""; } if (currencyDigits.match(/[^,.\d]/) != null) { alert("你输入的不是数字,请输入数字"); return ""; } if ((currencyDigits).match(/^((\d{1,3}(,\d{3})*(.((\d{3},)*\d{1,3}))?)|(\d+(.\d+)?))$/) == null) { alert("你输入的汉字是非法格式,请重新输入!"); return ""; } // Normalize the format of input digits: currencyDigits = currencyDigits.replace(/,/g, ""); // Remove comma delimiters. currencyDigits = currencyDigits.replace(/^0+/, ""); // Trim zeros at the beginning. // Assert the number is not greater than the maximum number. if (Number(currencyDigits) > MAXIMUM_NUMBER) { alert("你输入的太长了"); return ""; } // Process the coversion from currency digits to characters: // Separate integral and decimal parts before processing coversion: parts = currencyDigits.split("."); if (parts.length > 1) { integral = parts[0]; decimal = parts[1]; // Cut down redundant decimal digits that are after the second. decimal = decimal.substr(0, 2); } else { integral = parts[0]; decimal = ""; } // Prepare the characters corresponding to the digits: digits = new Array(CN_ZERO, CN_ONE, CN_TWO, CN_THREE, CN_FOUR, CN_FIVE, CN_SIX, CN_SEVEN, CN_EIGHT, CN_NINE); radices = new Array("", CN_TEN, CN_HUNDRED, CN_THOUSAND); bigRadices = new Array("", CN_TEN_THOUSAND, CN_HUNDRED_MILLION); decimals = new Array(CN_TEN_CENT, CN_CENT); // Start processing: outputCharacters = ""; // Process integral part if it is larger than 0: if (Number(integral) > 0) { zeroCount = 0; for (i = 0; i < integral.length; i++) { p = integral.length - i - 1; d = integral.substr(i, 1); quotient = p / 4; modulus = p % 4; if (d == "0") { zeroCount++; } else { if (zeroCount > 0) { outputCharacters += digits[0]; } zeroCount = 0; outputCharacters += digits[Number(d)] + radices[modulus]; } if (modulus == 0 && zeroCount < 4) { outputCharacters += bigRadices[quotient]; } } outputCharacters += CN_DOLLAR; } // Process decimal part if there is: if (decimal != "") { for (i = 0; i < decimal.length; i++) { d = decimal.substr(i, 1); if (d != "0") { outputCharacters += digits[Number(d)] + decimals[i]; } } } // Confirm and return the final output string: if (outputCharacters == "") { outputCharacters = CN_ZERO + CN_DOLLAR; } if (decimal == "") { outputCharacters += CN_INTEGER; } outputCharacters = CN_SYMBOL + outputCharacters; return outputCharacters; }
我们在开收据的时候会根据明细输入销售数据大小写,那么怎么让输入的数字自动变为大写了?下面将以excel收据为例,讲解具体的操作方法:
如上图,将单价55234元输入到下方大写金额处。
第一步:选择单元格区域,点击右键单元格格式—特殊—类型—中文大写数字;
第二步:输入金额,效果如下:
这种效果是不是非常神奇呀~~
第一步:选中要进行修改的数据后面的单元格。
第二步:输入公式:=IF(MOD(A2,1)=0,TEXT(INT(A2),"[DBNUM2]")&"元"&"整",TEXT(INT(A2),"[DBNUM2]")&"元"&TEXT(MID(A2,LEN(INT(A2))+2,1),"[DBNUM2]D角")&TEXT(MID(A2,LEN(INT(A2))+3,1),"[DBNUM2]D分")),输入完成后按回车键。
第三步:用鼠标左键按住右下角的填充柄。
第四步:按住填充柄往下拉,到最后一个数据。
在标有各种金额的Excel表格中,需要将金额转换成大写的状态,虽然可以用打字的方式打出来,但是这种方式太慢了,特别是在庞大的数据下,令人头大,为了解决“金额大小写转换”这个问题,小编找到了两种方法,一种是设置单元格,一种是利用公式进行转换。
方式一:设置单元格格式转换金额大小写步骤一:将小写数字全选复制到需要转换的空白单元格中,鼠标右击选择“设置单元格格式”。
步骤二:分类选择“特殊”,类型选择“人民币大写”,最后点击“确定”。
注意:这种方式不能转换有小数点的金额。
方式二:利用text函数转换金额大小写方式二可以对有小数点的金额进行转换,首先在空白单元格内点击上方的Fx找到text函数或输入“=text(B5,"[DBNum2][$-804]G/通用格式")”,B5位小写金额的单元格位置,最后点击“确定”即可。
注意:该公式比较复杂,建议收藏复制粘贴使用。
以上就是金额大小写转换的方式,小编认为方式二会更全面,特别是在金额存在小数点的情况下,赞同的朋友们希望可以给小编一个赞或者分享给身边需要这个公式的朋友,每天增加一个小技巧!