Excel中将人民币小写转大写的公式
- 格式:doc
- 大小:20.00 KB
- 文档页数:1
EXCEL 小写
金额转换大
写公式:
示例:
小写金额:大写金额:
28546.37大写(人民币)贰万捌仟伍佰肆拾陆元叁角柒说明:不讨论公式设计,单从应用方法上简单介绍,将大写金额单元格的公式复制到需要体现大写的单元格,然后对公示引用的小写单元格进行替换操作即可,比如小写金额在D5单元格,那将下述大写单元格公示中的A7全部替换成为D5即可;
公示描述:"大写(人民币)"&IF((INT(A7*10)-
INT(A7)*10)=0,TEXT(INT(A7),"[DBNum2]G/通用格式")&"元
"&IF((INT(A7*100)-INT((A7)*10)*10)=0,"整","零
"&TEXT(INT(A7*100)-INT(A7*10)*10,"[DBNum2]G/通用格式")&"分"),TEXT(INT(A7),"[DBNum2]G/通用格式")&"元"&IF((INT(A7*100)-INT((A7)*10)*10)=0,TEXT((INT(A7*10)-INT(A7)*10),"[DBNum2]G/通用格式")&"角整",TEXT((INT(A7*10)-INT(A7)*10),"[DBNum2]G/通用格式")&"角"&TEXT(INT(A7*100)-INT(A7*10)*10,"[DBNum2]G/通用格式")&"分"))。
EXCEL财务小技巧--人民币数字金额转汉字大写公式前几天又被问到人民币大写,正好想起来以前收集的这个公式,当时是做一个空调安装报价系统,所以在网上找到了这个公式,公式看起来很复杂,不过结构并不复杂,有兴趣的可以研究下,不过学会用还是很简单的公式如下:='大写:'&IF(ABS(E1)<0.005,'',IF(E1<0,'负',)&IF(INT(ABS(E1)),TEXT(INT(ABS(E1)),'[dbnum2]')&'元',)&IF(INT(ABS(E1)*10)-INT(ABS(E1))*10,TEXT(INT(ABS(E1)*10)-INT(ABS(E1))*10,'[dbnum2]')&'角',IF(INT(ABS(E1))=ABS(E1),,IF(ABS(E1)<0.1,,'零')))&IF(ROUND(ABS(E1)*100-INT(ABS(E1)*10)*10,),TEXT(ROUND(ABS(E1)*100-INT(ABS(E1)*10)*10,),'[dbnum2]')&'分','整'))在实际用的时候先把这个公式复制到记事本里,比如你要将A1的数字转化成人民币大写,那就用记事本的替换功能将E1替换成A1,在将公式复制粘贴到要显示大写的单元格即可应用的结果示范如下另外这个公式是个引子,需要的最终格式和这有点不一样,那也可以根据这个公式做一些简单改变,比如说总是要得到要得到 *元*角*分的样子那就写成='人民币'&IF(ABS(AG10)<0.005,'',IF(AG10<0,'负',)&IF(INT(ABS(AG10)),TEXT(INT(ABS(AG10)),'[dbnum2]')&'元',)&IF(INT(ABS(AG10)*10)-INT(ABS(AG10))*10,TEXT(INT(ABS(AG10)*10)-INT(ABS(AG10))*10,'[dbnum2]')&'角',IF(INT(ABS(AG10))=ABS(AG10),'零角',IF(ABS(AG10)<0.1,,'零')))&TEXT(ROUND(ABS(AG10)*100-INT(ABS(AG10)*10)*10,),'[dbnum2]')&'分')注意这里目标单元格时AG10,结果如下人民币伍万肆仟零叁拾元零角零分540302010-10-12 by excel880。
excel中如何将数字变成大写金额的函数如何在Excel中将数字转化为大写金额在Excel中,我们经常需要将数字转化为大写金额,以便更直观地展示数值。
虽然Excel本身并没有提供直接将数字转化为大写金额的函数,但我们可以通过一些方法来实现这个功能。
本文将介绍两种常用的方法,分别是使用Excel的内置函数和使用自定义宏。
一、使用Excel的内置函数Excel提供了一个内置的函数——“人民币大写”函数,可以将数字转化为大写金额。
下面是使用该函数的步骤:步骤1:打开Excel并选择一个单元格,例如A1,用于输入要转化的数字。
步骤2:在另一个单元格中,例如B1,输入以下公式:=人民币大写(A1)步骤3:按下回车键,即可将A1单元格中的数字转化为大写金额。
需要注意的是,“人民币大写”函数只能将数字转化为中文大写金额,而不能转化为其他语言的大写金额。
如果需要转化为其他语言的大写金额,可以考虑使用自定义宏的方法。
二、使用自定义宏自定义宏是一种基于VBA(Visual Basic for Applications)语言的编程方式,可以在Excel中实现各种自定义功能。
下面是使用自定义宏将数字转化为大写金额的步骤:步骤1:按下Alt+F11键,打开VBA编辑器。
步骤2:在VBA编辑器中,选择“插入”菜单,然后选择“模块”。
步骤3:在新建的模块中,输入以下VBA代码:```Function ConvertToChineseNumber(ByVal MyNumber)Dim MyCurrency, DecimalPlace, CountReDim Place(9) As StringPlace(2) = " Thousand "Place(3) = " Million "Place(4) = " Billion "Place(5) = " Trillion "' Convert MyNumber to String, trimming extra spaces.MyNumber = Trim(CStr(MyNumber))' Check for valid input.If MyNumber = "" ThenConvertToChineseNumber = ""Exit FunctionEnd If' Convert MyNumber to Currency figures.ReDim DecimalPlace(9) As StringDecimalPlace(2) = " Hundred "DecimalPlace(3) = " Thousand "DecimalPlace(4) = " Million "DecimalPlace(5) = " Billion "' Convert MyNumber to Currency figures.MyNumber = Trim(CStr(MyNumber))' Remove leading zeros' DecimalPlace = GetVal(Trim(Mid(MyNumber, DecimalPlace + 1, 2)))Count = 1Do While MyNumber <> ""ReDim Preserve MyCurr(Count) As StringCount = Count + 1MyCurr(Count - 1) = GetTens(Trim(Mid(MyNumber, 1, 2)), MyNumber)If Len(MyNumber) > 2 ThenMyNumber = Trim(Mid(MyNumber, 3))ElseMyNumber = ""End IfLoopCount = Count - 1For DecimalPlace = Count To 1 Step -1MyCurrency = MyCurrency & " " & MyCurr(DecimalPlace) If DecimalPlace = 1 Then' -- If place is ten thousand and greater than 0 set nother name to RupeesIf Len(MyNumber) = 1 Then MyCurr(1) = " and " & MyCurr(1)MyCurrency = MyCurrency & Place(DecimalPlace)End IfNext DecimalPlaceConvertToChineseNumber = MyCurrencyEnd FunctionFunction GetTens(TensText, ByVal Amount)Dim Result As StringResult = "" ' Null out the temporary function value.If Val(Left(TensText, 1)) = 1 Then ' If value between 10-19...Select Case Val(TensText)Case 10: Result = "Ten"Case 11: Result = "Eleven"Case 12: Result = "Twelve"Case 13: Result = "Thirteen"Case 14: Result = "Fourteen"Case 15: Result = "Fifteen"Case 16: Result = "Sixteen"Case 17: Result = "Seventeen"Case 18: Result = "Eighteen"Case 19: Result = "Nineteen"Case ElseEnd SelectElse ' If value between 20-99...Select Case Val(Left(TensText, 1))Case 2: Result = "Twenty "Case 3: Result = "Thirty "Case 4: Result = "Forty "Case 5: Result = "Fifty "Case 6: Result = "Sixty "Case 7: Result = "Seventy "Case 8: Result = "Eighty "Case 9: Result = "Ninety "Case ElseEnd SelectResult = Result & GetDigit _(Right(TensText, 1)) ' Retrieve ones place. End IfGetTens = ResultEnd FunctionFunction GetDigit(Digit)Select Case Val(Digit)Case 1: GetDigit = "One"Case 2: GetDigit = "Two"Case 3: GetDigit = "Three"Case 4: GetDigit = "Four"Case 5: GetDigit = "Five"Case 6: GetDigit = "Six"Case 7: GetDigit = "Seven"Case 8: GetDigit = "Eight"Case 9: GetDigit = "Nine"Case Else: GetDigit = ""End SelectEnd Function```步骤4:按下Ctrl+S保存宏,并关闭VBA编辑器。
Excel函数公式转换人民币大小写问题:想将A1中人民币的小写数字,在B1中转成人民币大写。
解答:B1中输入=TEXT(A1*100,"[dbnum2]0拾0万0仟0佰0拾0元0角0分")就可以了,如果你不要拾万位,自己可以修改的,如=TEXT(A1*100,"[dbnum2]0万0仟0佰0拾0元0角0分")等形式都可以的。
⑴已知:A1=4.51函数:B1 =TEXT(A1*100,"[dbnum2]0拾0万0仟0佰0拾0元0角0分")结果:零拾零万零仟零佰零拾肆元伍角壹分⑵已知:A1=456789.23函数:B1 =TEXT(A1*100,"[dbnum2]0拾0万0仟0佰0拾0元0角0分")结果:肆拾伍万陆仟柒佰捌拾玖元贰角叁分⑶已知:A1=123456789.2(注:位数不能超过拾万)函数:B1 =TEXT(A1*100,"[dbnum2]0拾0万0仟0佰0拾0元0角0分")结果:壹贰叁肆拾伍万陆仟柒佰捌拾玖元贰角叁分⑷已知:A1=4.51函数:B1=TEXT(A1*100,"[dbnum2]0万0仟0佰0拾0元0角0分")结果:零万零仟零佰零拾肆元伍角壹分⑸已知:A1=23.25函数:B1=TEXT(A1*100,"[dbnum2] 0拾0元0角0分")结果:贰拾叁元贰角伍分⑹已知:B9=123456789.12函数:=IF(B9<=0,,TEXT(INT(B9),"[dbnum2]人民币G/通用格式")&"元"&IF(INT(B9*10)-INT(B9)*10=0,IF(INT(B9)*(INT(B9*100)-INT(B9*10)*10)=0,"","零"),TEXT(INT(B9*10)-INT(B9)*10,"[dbnum2]")&"角")&IF((INT(B9*100)-INT(B9*10)*10)=0,"整",TEXT((INT(B9*100)-INT(B9*10)*10),"[dbnum2]")&"分"))结果:人民币壹亿贰仟叁佰肆拾伍万陆仟柒佰捌拾玖元壹角贰分⑺已知:B9=123456789.12函数:=IF(B9<=0,,TEXT(INT(B9),"[dbnum2]G/通用格式")&"元"&IF(INT(B9*10)-INT(B9)*10=0,IF(INT(B9)*(INT(B9*100)-INT(B9*10)*10)=0,"","零"),TEXT(INT(B9*10)-INT(B9)*10,"[dbnum2]")&"角")&IF((INT(B9*100)-INT(B9*10)*10)=0,"整",TEXT((INT(B9*100)-INT(B9*10)*10),"[dbnum2]")&"分"))结果:壹亿贰仟叁佰肆拾伍万陆仟柒佰捌拾玖元壹角贰分⑻已知:B9=123456789.12函数:=IF(ROUND(B9,2)=0,"",IF(ROUND(ABS(B9),2)>=1,TEXT(INT(ROUND(ABS(B9),2)),"[DBNum2]")&"元","")&IF(RIGHT(TEXT(B9,".00"),2)*1=0,"整",IF(RIGHT(TEXT(B9,".00"),4)*1>=1,IF(RIGHT(TEXT(B9,".00"),2)*1>9,"","零"),IF(ROUND(ABS(B9),2)>=1,"零",""))&IF(RIGHT(TEXT(B9,".00"),2)*1>9,TEXT(LEFT(RIGHT(TEXT(B9,".00"),2)),"[DBNum2]")&"角","")&IF(RIGHT(TEXT(B9,".00"))*1>0,TEXT(RIGHT(TEXT(B9,".00")),"[DBNum2]")&"分","整")))结果:壹亿贰仟叁佰肆拾伍万陆仟柒佰捌拾玖元壹角贰分核心提示:人民币金额大写转换是财务和会计领域的热点问题,网络提供此问题的方法很多,主要有VBA、自定义函数、多种函数嵌套等。
Excel表中小写金额直接转换成大写金额的公式:一、=IF(OR(A1<0,A1=""),"",IF(VALUE(LEFT(A1,1))=0,"",NUMBERSTRIN G(INT(A1),2)&"元")&IF(ISERROR(FIND(".",A1)),"整",IF(VALUE(MID(A1,FIND(".",A1)+1,1))=0,"零",IF(ISERROR(FIND(".",A1)),"",NUMBERSTRING(MID(A1,FIND(".", A1)+1,1),2)&"角")))&IF(ISERROR(FIND(".",A1)),"",IF(LEN(ROUND(A1,2))=(FIND( ".",A1)+2),NUMBERSTRING(MID(ROUND(A1,2),FIND(".",A1)+2,1),2 )&"分","")))&IF(ISERROR(FIND(".",A1)),"","")二、假定你要在B1输入阿拉佰数字,C1转换成中文大写金额(含元角分),请在C1单元格输入如下公式:=SUBSTITUTE(SUBSTITUTE(IF(-RMB(B1),IF(B1>0,,"负")&TEXT(INT(ABS(B1)+0.5%),"[dbnum2]G/通用格式元;;")&TEXT(RIGHT(RMB(B1,2),2),"[dbnum2]0角0分;;整"),),"零角",IF(B1^2<1,,"零")),"零分","整")三、用公式就可以,我不懂做会计的如何用大写表示如128.40这样的角不为0但分为0的值,是“壹佰贰拾捌元肆角整”还是“壹佰贰拾捌元肆角”?如果是“壹佰贰拾捌元肆角”,请用这个公式:=TEXT(INT(B2),"[DBNUM2]")&"元"&IF(INT(B2)=B2,"整",(IF(INT(B2*10)-INT(B2)*10>0,TEXT(INT(B2*10)-INT(B2)*10,"[ DBNUM2]")&"角","零")&IF(B2*100-INT(B2*10)*10>0,TEXT(B2*100-INT(B2*10)*10,"[db num2]")&"分","")))如果是“壹佰贰拾捌元肆角整”,请用这个公式:=TEXT(INT(B2),"[DBNUM2]")&"元"&(IF(INT(B2*10)-INT(B2)*10>0,TEXT(INT(B2*10)-INT(B2)*10,"[ DBNUM2]")&"角",IF(B2*100-INT(B2*10)*10>0,"零",""))&IF(B2*100-INT(B2*10)*10>0,TEXT(B2*100-INT(B2*10)*10, "[dbnum2]")&"分","整"))说明:1、将以上公式中的B2换成你要换算的值或对应的单元格。
excel金额转大写的公式用法Excel中经常需要把金额转换成大写的形式,具体该怎么用公式进行转换大写格式呢?接下来是小编为大家带来的excel金额转大写的公式用法,供大家参考。
excel金额转大写的公式用法:金额转换大写步骤1:将小写数字转换成大写中文:右击需要转换的单元格,在弹出的快捷菜单中选择设置单元格格式,然后在数字选项卡中选择特殊,在类型中选择中文大写数字,这时候原来的数字为12345,在示例里已变成大写的壹万贰仟叁佰肆拾伍,然后按确定即可。
金额转换大写步骤2:右击需要转换的单元格,在弹出的快捷菜单中选择设置单元格格式,然后在数字选项卡中选择自定义,在类型中写入【[DBNum2][$-804]G/通用格式元整】,同样,在示例里已变成大写的壹万贰仟叁佰肆拾伍,然后按确定即可。
金额转换大写步骤1:= 人民币:[DBNUM2])元整,IF(INT(SUM(E2:E4)*10)-SUM(E2:E4)*10=0,TEXT(INT(SUM(E2 :E4)),[DBNUM2])元[DBNUM2])角整,TEXT(INT(SUM(E2:E4)),[DBNUM2])元零,TEXT(INT(SUM(E2:E4)*10)-INT(SUM(E2:E4))*10,[DBNUM2])角)[DBNUM2])分))(¥元)前后加插了字符串的方法,其中SUM(E2:E4)是一个求合函数,请按实际要求替换为某个单元格或另外的内容。
使用记事本的替换功能就可以了。
看了excel金额转大写的公式用法还看了:1.excel 数字小写转大写公式的教程(2种)2.怎么将Excel2007小写金额转换为大写金额3.怎么利用Excel2013把数字转为中文大写数字4.excel小写换大写函数的教程5.Excel大写字母怎么转换为小写6.excel利用公式数字转换文本的方法7.Excel2007中怎么让单元格英文小写转为大写。
如何将小写金额转换成大写金额函数公式要将小写金额转换成大写金额,可以使用以下函数公式:1. 创建一个函数,命名为convertToChinese(amount),其中amount 是小写金额的参数。
2.首先,创建一个字典用于存储数字和对应的中文大写表示。
例如:digits =0:'零',1:'壹',2:'贰',3:'叁',4:'肆',5:'伍',6:'陆',7:'柒',8:'捌',9:'玖'}3.创建一个列表用于存储数字位数对应的中文大写表示。
例如:units = ['', '拾', '佰', '仟', '万', '拾', '佰', '仟', '亿']4. 将小写金额转换成整数,以避免小数点的干扰。
可使用int(函数将小写金额转换为整数。
例如:amount = int(amount)5. 创建一个空字符串变量result,用于存储最终的大写金额。
6. 判断金额是否为零,如果是零,则将'零'加入到result中。
例如:if amount == 0:result = '零'7.创建一个循环,每次迭代都获取金额的最后四位。
循环的条件为金额不为零。
例如:while amount != 0:8.获取最后四位的数字,并将其转换成字符串。
例如:10. 创建一个空字符串变量temp,用于存储最终的大写金额的每一位。
11.创建一个循环,每次迭代都获取最后一位数字,并将其转换成中文大写表示。
循环的条件为最后四位数字不为零。
例如:while last_four != '0':12.获取最后一位数字,并将其转换成整数。
excel小写转大写金额的三种常见方法Excel人民币金额自动大写之前有财务岗的伙伴问过小雅这个问题,在工作中经常要填写中文大写金额,如果一个个填写大写金额,既耗时费力,又事半功倍。
并且面对大量数据,效率低下且极易出错。
今天小雅休息,给大家整理出来一起学习。
第一,单元格格式转大写金额1、将A列的数字小写金额,复制到B列,单击右键,选择设置单元格。
2、在左侧的类别栏中,单击:特殊,就会在右侧出现类型,选择---中文大写数字即可。
总结:这种excel自动大写金额方法优势在于速度快,不过如果带转换的小写数字含有小数,则会出错。
该方法只适合整数的转换。
第二, Numberstring函数转大写金额在Excel中有一个隐藏函数:numberstring函数,专门用来将小写数字金额转为大写金额的函数。
其函数语法为:Numberstring(number,参数),有三种参数,分别为1、2、3,其对应的转为大写的格式分别为中文大写金额,会计大写金额,数学大写金额。
请参考下面小雅的截图:总结:excel人民币金额大写使用到了numberstring函数,仅能将整数部分转为大写,无法将小数部分也转为大写金额,小数部分将四舍五入到整数部分。
第三,公式转大写金额我们在B2中输入公式:=SUBSTITUTE(SUBSTITUTE(TEXT(INT(A2),"[DBNum2][$-804]G/通用格式元"&IF(INT(A2)=A2,"整",""))&TEXT(MID(A2,FIND(".",A2&".0")+1,1),"[DBNum2][$-804]G/通用格式角")&TEXT(MID(A2,FIND(".",A2&".0")+2,1),"[DBNum2][$-804]G/通用格式分"),"零角","零"),"零分","")按回车键,双击之后就能自动填充,迅速将小写的数字金额转为标准的会计的大写数字金额。
在EXCEL中将数字转换为人民币大写的三种方式鉴于EXCEL本身提供将数字转换为大写表示的功能根本不能正常应用在实际投标或财务应用之中,所以要自己建设,暂时找到了三种实现途径,经过测试均功能正常,还有一种是在书上找到的,懒得KEYIN进来了,反正也差不多了。
方法1,通过在EXCEL表格框(例如在“B1”单元)中直接输入以下公式:=IF(A1<0,"金额为负无效",(IF(OR(A1=0,A1=""),"(人民币)零元",IF(A1<1,"(人民币)",TEXT(INT(A1),"[dbnum2](人民币)G/通用格式")&"元"))))&IF((INT(A1*10)-INT(A1)*10)=0,IF(INT(A1*100)-INT(A1*10)*10=0,"","零"),(TEXT(INT(A1*10)-INT(A1)*10,"[dbnum2]")&"角"))&IF((INT(A1*100)-INT(A1*10)*10)=0,"整",TEXT((INT(A1*100)-INT(A1*10)*10),"[dbnum2]")&"分")然后在“A1”中输入数字,就可看到效果。
方法2,通过VBA(宏)输入转换公式: 点击菜单“工具”->“宏”->“VisualBasic编辑器”,在编辑器窗口中,点击菜单“插入”->“模块”,在出现的窗口中输入以下内容:Function daxie(ByVal Num) ' 人民币中文大写函数Application.Volatile TruePlace = "分角元拾佰仟万拾佰仟亿拾佰仟万"Dn = "壹贰叁肆伍陆柒捌玖"D1 = "整零元零零零万零零零亿零零零万"If Num < 0 Then FuHao = "(负)"Num = Format(Abs(Num), "###0.00") * 100If Num > 999999999999999# Then: daxie = "数字超出转换范围!!": Exit FunctionIf Num = 0 Then: daxie = "零元零分": Exit FunctionNumA = Trim(Str(Num))NumLen = Len(NumA)For J = NumLen To 1 Step -1 ' 数字转换过程temp = Val(Mid(NumA, NumLen - J + 1, 1))If temp <> 0 Then ' 非零数字转换NumC = NumC & Mid(Dn, temp, 1) & Mid(Place, J, 1) Else ' 数字零的转换If Right(NumC, 1) <> "零" ThenNumC = NumC & Mid(D1, J, 1)ElseSelect Case J ' 特殊数位转换Case 1NumC = Left(NumC, Len(NumC) - 1) & Mid(D1, J, 1)Case 3, 11NumC = Left(NumC, Len(NumC) - 1) & Mid(D1, J, 1) & "零"Case 7If Mid(NumC, Len(NumC) - 1, 1) <> "亿" ThenNumC = Left(NumC, Len(NumC) - 1) & Mid(D1, J, 1) & "零"End IfCase ElseEnd SelectEnd IfEnd IfNextdaxie = "(人民币)" & FuHao & Trim(NumC)End Function然后切换回excel,在“A2”单元中输入数字,在“B2”单元中输入:“=DaXie(A2)”,就可看到效果。
EXCEL中数字转换中文大写公式EXCEL中数字转换中文大写公式=IF(G6<0,\负\通用格式元\角\分\EXCEL中数字小写换大写方法一:在单元格A2中输入小写数字123.12 B2处输入以下公式=SUBSTITUTE(SUBSTITUTE(IF(A2<0,\负\元\),\角%um2]\分\整\零元零\零元\EXCEL中数字小写换大写方法二:在单元格A2中输入小写数字123.12 B2处输入以下公式=IF((INT(A2*10)-INT(A2)*10)=0,TEXT(INT(A2),\通用格式\元\整\零\通用格式\分\通用格式\元\通用格式\角整\通用格式\角\通用格式\分\EXCEL中数字小写换大写方法三:=IF(A2-INT(A2)=0,TEXT(INT(A2),\通用格式\圆整\通用格式\圆\通用格式\角\通用格式\分\EXCEL中数字小写换大写方法四:=IF((A2-INT(A2))=0,TEXT(A2,\元整\元\角整\元\零\角\分\看看结果是不是出现了你想要的?应该有你需要的大写金额了公式的由来: 仟分位公式如下:=TEXT(IF(LEN(INT($A1))>=4,MID($A1,LEN(INT($A1))-3,1),\佰分位公式如下:=TEXT(IF(LEN(INT($A1))>=3,MID($A1,LEN(INT($A1))-2,1),\第一位小数的公式:=TEXT(MID($A1,FIND(\第二位小数的公式:=TEXT(MID(TEXT($A1,\其他依此类推^^^^^^^^^^^^^^^^用Excel函数将货币数值由阿拉伯数字自动生成为中文大写格式如图是全部用Excel函数自编农业银行转帐支票套打工具,图中内容是需要打印到转帐支票上内容,其中A-D列为支票存根部分,我们利用Excel函数对要填写大部分内容建立公式后,只要输入支票存根部分的三项基本信息(A6-A8单元格):收款单位、金额、用途,其他内容全部自动生成。
EXCEL金额大小写转换公式大全在Excel中,我们可以使用宏或函数来实现金额大小写转换。
下面是一些常用的方法和公式:1.宏:可根据需要编写一个VBA宏来实现金额大小写转换。
以下是一个示例宏代码:```vbaOption ExplicitFunction ConvertNumberToWords(ByVal MyNumber)Dim DecimalPlace, CountReDim Place(9) As StringPlace(2) = " Thousand "Place(3) = " Million "Place(4) = " Billion "Place(5) = " Trillion "MyNumber = Trim(CStr(MyNumber))MyNumber = Replace(MyNumber, ",", "")DecimalPlace = InStr(MyNumber, ".")Count = 1Do While DecimalPlace <> 0If Count = 1 ThenMyNumber = Left(MyNumber, DecimalPlace - 1) &GetTens(Mid(MyNumber, DecimalPlace + 1) & "00")End IfIf Count = 2 Then MyNumber = Left(MyNumber, DecimalPlace - 1) & GetTens(Mid(MyNumber, DecimalPlace + 1) & "00") & " Cents"DecimalPlace = 0Count = Count + 1LoopSelect Case CountCase 1MyNumber = MyNumber & " Only"Case 2MyNumber = MyNumberEnd SelectConvertNumberToWords = Trim(MyNumber)End FunctionFunction GetDigit(ByVal Digit)Select Case Val(Digit)Case 1: GetDigit = "One"Case 2: GetDigit = "Two"Case 3: GetDigit = "Three"Case 4: GetDigit = "Four"Case 5: GetDigit = "Five"Case 6: GetDigit = "Six"Case 7: GetDigit = "Seven"Case 8: GetDigit = "Eight"Case 9: GetDigit = "Nine"Case Else: GetDigit = ""End SelectEnd FunctionFunction GetTens(TensText)Dim Quantity As StringQuantity = ""If Val(Left(TensText, 1)) = 1 Then Select Case Val(TensText)Case 10: Quantity = "Ten"Case 11: Quantity = "Eleven"Case 13: Quantity = "Thirteen" Case 14: Quantity = "Fourteen" Case 15: Quantity = "Fifteen" Case 16: Quantity = "Sixteen" Case 17: Quantity = "Seventeen" Case 18: Quantity = "Eighteen" Case 19: Quantity = "Nineteen" Case ElseEnd SelectElseSelect Case Val(Left(TensText, 1)) Case 2: Quantity = "Twenty "Case 3: Quantity = "Thirty "Case 4: Quantity = "Forty "Case 5: Quantity = "Fifty "Case 6: Quantity = "Sixty "Case 7: Quantity = "Seventy " Case 8: Quantity = "Eighty "Case ElseEnd SelectQuantity = Quantity & GetDigit(Right(TensText, 1))End IfGetTens = QuantityEnd Function```在“开发工具”选项卡下的宏对话框中,输入上述代码,并保存。
excel 大小写转换公式
在Excel中,你可以使用一些内置的函数来实现大小写转换。
下面是两个常用的公式:
1.大写转换:UPPER函数
UPPER函数将指定文本中的所有小写字母转换为大写字母。
例如,假设A1单元格中输入了一个字符串,你可以在B1单元格中使用以下公式进行大写转换:
=UPPER(A1)
这将返回A1中的字符串的大写版本。
2.小写转换:LOWER函数
LOWER函数将指定文本中的所有大写字母转换为小写字母。
同样假设A1单元格中输入了一个字符串,你可以在B1单元格中使用以下公式进行小写转换:
=LOWER(A1)
这将返回A1中的字符串的小写版本。
你可以将这些公式应用到整个列或行,以批量转换大小写。
巧用EXCEL公式将数字转换成为货币大写比如说:在A1单元格里的数字是:¥15275.00;我想转换成:人民币零拾壹万伍仟贰佰柒拾伍元零角零分。
而且“拾”、“万”、“仟”、“佰”、“拾”、“元”、“角”、“分”的是固定存在的。
并且在“零拾”前显示“人民币”或者“[敏感词语]”的中文字。
直接在你想要显示大写数字的单元格,输入以下公式就大功告成了。
复制,粘贴,OK以下为三种方法,只要贴一种就行了哟。
=TEXT(A1*100,"人民币0拾0万0仟0佰0拾0元0角0分[dbnum2]")无固定显示“人民币”时,=IF(A1<0,"无效数值",IF(A1=0,"",IF(A1<1,"",TEXT(INT(A1),"[dbnum2]")&"元")&IF(INT(A1*10)-INT(A1)*10=0,IF(INT(A1)*(INT(A1*100)-INT(A1*10)*10)=0,"","零"),IF(AND((INT(A1)-INT(A1/10)*10)=0,INT(A1)>0),"零"&TEXT(INT(A1*10)-INT(A1)*10,"[dbnum2]")&"角",TEXT(INT(A1*10)-INT(A1)*10,"[dbnum2]")&"角"))&IF((INT(A1*100)-INT(A1*10)*10)=0,"整",TEXT(INT(A1*100)-INT(A1*10)*10,"[dbnum2]")&"分")))=SUBSTITUTE(SUBSTITUTE(TEXT(TRUNC(FIXED(A1)),"[>0][d bnum2];[<0]负[dbnum2];;")&TEXT(RIGHT(FIXED(A1),2),"元[dbnum2]0角0分;;"&IF(ABS(A1)>1%,"元整",)),"零角",IF(ABS(A1)<1,,"零")),"零分","整")。
excel小写数值如何转换为大写篇一:Excel表中小写金额直接转换成大写金额的公式Excel表中小写金额直接转换成大写金额的公式:一、=IF(OR(A1零",IF(VALUE(MID(A1,FIND(".",A1)+1,1))=0,"",IF(ISERROR(FIND(".",A1)),"",NUMBERSTRING(MID(A1,FIND(".",A1)+1,1) ,2)&"角")))&IF(ISERROR(FIND(".",A1)),"",IF(LEN(ROUND(A1,2))=(FIND(".",A1)+2), NUMBERSTRING(MID(ROUND(A1,2),FIND(".",A1)+2,1),2)&"分","")))&IF(ISERROR(FIND(".",A1)),"","")二、假定你要在B1输入阿拉佰数字,C1转换成中文大写金额(含元角分),请在C1单元格输入如下公式:=SUBSTITUTE(SUBSTITUTE(IF(-RMB(B1),IF(B1>0,,"")&TEXT(INT(ABS(B1)+ 0.5%),"[dbnum2]G/通用格负式元;;")&TEXT(RIGHT(RMB(B1,2),2),"[dbnum2]0角0分;;整"),),"零角",IF(B1三、用公式就可以,我不懂做会计的如何用大写表示如128.40这样的角不为0但分为0的值,是“壹佰贰拾捌元肆角整”还是“壹佰贰拾捌元肆角”?如果是“壹佰贰拾捌元肆角”,请用这个公式:=TEXT(INT(B2),"[DBNUM2]")&"元"&IF(INT(B2)=B2,"整",(IF(INT(B2*10)-INT(B2)*10>0,TEXT(INT(B2*10)-INT(B2)*10,"[DBNUM2] ")&"角","零")&IF(B2*100-INT(B2*10)*10>0,TEXT(B2*100-INT(B2*10)*10,"[dbnum2] ")&"分","")))如果是“壹佰贰拾捌元肆角整”,请用这个公式:=TEXT(INT(B2),"[DBNUM2]")&"元"&(IF(INT(B2*10)-INT(B2)*10>0,TEXT(INT(B2*10)-INT(B2)*10,"[DBNUM2 ]")&"角",IF(B2*100-INT(B2*10)*10>0,"零",""))&IF(B2*100-INT(B2*10)*10>0,TEXT(B2*100-INT(B2*10)*10,"[dbnu m2]")&"分","整"))说明:1、将以上公式中的B2换成你要换算的值或对应的单元格。