金额大小写转换公式

合集下载

excel 金额大写转换公式

excel 金额大写转换公式

excel 金额大写转换公式摘要:一、介绍Excel 金额大写转换公式二、分析金额大写转换公式的原理三、讲解如何使用Excel 金额大写转换公式四、总结Excel 金额大写转换公式的优点与局限性五、提供使用Excel 金额大写转换公式时的注意事项正文:在Excel 中,我们常常需要将数字金额转换为大写金额。

为了方便用户实现这一功能,Excel 提供了一个金额大写转换公式。

本文将详细介绍这个公式,并分析其原理及使用方法。

首先,我们来了解一下Excel 金额大写转换公式的原理。

这个公式基于汉字数字与阿拉伯数字的对应关系,通过嵌套IF 函数,实现将阿拉伯数字转换为大写金额的功能。

接下来,我们来讲解如何使用Excel 金额大写转换公式。

假设A1 单元格中存储的数字金额为1234.56,我们可以在B1 单元格中输入以下公式:```=IF(A1>=10000, "壹万零" & TRANSPOSE(TEXT(A1-10000, ";负数;零;壹;贰;叁;肆;伍;陆;柒;捌;玖;拾")), IF(A1>=1000, "壹仟零" & TRANSPOSE(TEXT(A1-1000, ";负数;零;壹;贰;叁;肆;伍;陆;柒;捌;玖;拾")),IF(A1>=100, "壹佰零" & TRANSPOSE(TEXT(A1-100, ";负数;零;壹;贰;叁;肆;伍;陆;柒;捌;玖;拾")), IF(A1>=10, "十元" & TRANSPOSE(TEXT(A1-10, ";负数;零;壹;贰;叁;肆;伍;陆;柒;捌;玖;拾")), TEXT(A1, ";负数;零;壹;贰;叁;肆;伍;陆;柒;捌;玖;拾")))```以上公式可以根据需要进行调整,以适应不同的金额格式需求。

大小写金额转换公式

大小写金额转换公式

大小写金额转换公式
(原创版)
目录
1.引言
2.金额转换公式概述
3.大小写金额转换方法
4.实际应用案例
5.结论
正文
【引言】
在财务管理和会计领域,金额表示方式有多种,其中最为常见的是大小写金额表示。

为了方便用户在不同表示方式间进行转换,本文将为大家介绍一种大小写金额转换公式。

【金额转换公式概述】
大小写金额转换公式是指将数字金额转换为大写金额表示,或将大写金额表示转换为数字金额表示的一种方法。

在我国,大写金额表示主要采用汉字数字,如“壹”、“贰”、“叁”等。

【大小写金额转换方法】
1.数字金额转大写金额:
采用以下公式进行转换:
大写金额 = 数字金额× 100000000 + “亿”
例如:数字金额为 123456789,转换后的大写金额为:壹亿贰仟叁佰肆拾伍万陆仟柒佰捌拾玖。

2.大写金额转数字金额:
采用以下公式进行转换:
数字金额 = 大写金额÷ 100000000 - “亿”
例如:大写金额为壹亿贰仟叁佰肆拾伍万陆仟柒佰捌拾玖,转换后的数字金额为:123456789。

【实际应用案例】
在实际财务管理和会计工作中,大小写金额转换公式可以应用于各种金额表示的转换,如发票、支票、合同等文件中的金额表示。

这有助于提高工作效率,减少人工操作的错误。

【结论】
大小写金额转换公式为用户提供了一种简便、快速的金额表示转换方法。

在实际应用中,这种方法有助于提高财务管理和会计工作的效率,降低错误率。

excel表格金额大小写转换

excel表格金额大小写转换

竭诚为您提供优质文档/双击可除excel表格金额大小写转换篇一:excel表中小写金额直接转换成大写金额的公式excel表中小写金额直接转换成大写金额的公式:一、=iF(oR(a1 三、用公式就可以,我不懂做会计的如何用大写表示如128.40这样的角不为0但分为0的值,是“壹佰贰拾捌元肆角整”还是“壹佰贰拾捌元肆角”?如果是“壹佰贰拾捌元肆角”,请用这个公式:=text(int(b2),"[dbnum2]"),text((int(c10*100)-int(c1 0*10)*10),"[dbnum2]")nascurrencyconstcnumasstring="零壹贰叁肆伍陆柒捌玖-万仟佰拾亿仟佰拾万仟佰拾元角分"constcchaasstring="零仟零佰零拾零零零零零亿零万零元亿万零角零分零整-零零零零零亿万元亿零整整"dimsnumasstringdimiaslongif(n0)and(abs(n)snum=trim(str(int(abs(n)*100)))Fori=1tolen(snum)逐位转换baituRmbdx=baituRmbdx+mid(cnum,(mid(snum,i,1))+1,1) +mid(cnum,26-len(snum)+i,1)nextFori=0to11去掉多余的零baituRmbdx=Replace(baituRmbdx,mid(ccha,i*2+1,2),mid (ccha,i+26,1))nextifn elsebaituRmbdx=iif(n=0,"零元","溢出")endifendFunction11Functionuppernum(n)nassingle数字大写函数ifn 正负判断="负"endifn=n+0.0001ifint(n*1000)-int(n*100)*10>4thenn=(int(n*100)+1)/100+0.001elsen=int(n*100)/100+0.001endifselectcasencaseis>9999999999999.99uppernum="数据不符"msgbox"金额不能大于9999999999999.99!",vbokonly,"出错提示"caseelseconstcnum="零壹贰叁肆伍陆柒捌玖-万仟佰拾亿仟佰拾万仟佰拾元角分"constccha="零仟零佰零拾零零零零零亿零万零元亿万零角零分零整-零零零零零亿万元亿零整整"uppernum=""snum=""s=trim(str(n))Fori=1tolen(s)-1ifmid(s,i,1)"."thensnum=snum+mid(s,i,1)Fori=1tolen(snum)逐位转换uppernum=uppernum+mid(cnum,(mid(snum,i,1))+1,1)+mid (cnum,26-len(snum)+i,1)nextiFori=0to11去掉多余的零uppernum=Replace(uppernum,mid(ccha,i*2+1,2),mid(cch a,i+26,1))nextiendselectif正负判断="负"thenuppernum="负"&uppernumendFunction12Functionjezh(xasRange)ifx>=1thenifint(x)=xorRound(x,2)=int(x)thenjezh=application.worksheetFunction.text(int(x),"[db num2]")&"元"elseifint(x*10)=x*10orint(x*10)=Round(x,2)*10then。

小写金额转换大写金额函数公式

小写金额转换大写金额函数公式

小写金额转换大写金额函数公式1.概述在日常生活和工作中,经常会与人进行金融交易,其中包括付款和收款。

在执行这些交易时,我们需要将商品或服务的价格转换为文字,称为大写金额。

大写金额与阿拉伯数字金额相比更加容易理解和记录,也可以提高交易的清晰度,因此在许多场合非常必要。

本文将介绍一个通用的小写金额转换大写金额的函数公式。

2.函数公式以下是一种通用的小写金额转换大写金额的函数公式:def digit_uppercase(digit):if digit>999999999999.99or digit<0:return"输入金额过大或者过小,请重新输入!"digits,fractions=str(round(digit,2)).split('.')digits=digits[::-1]result=[]if len(digits)>0:result.append('圆')zero_flag=Falsefor index in range(len(digits)):if digits[index]!='0':zero_flag=Falseresult.append('壹贰叁肆伍陆柒捌玖'[int(digits[index])])if index==0:result.append('亿')elif index==1:result.append('拾')elif index==2:result.append('佰')elif index==3:result.append('仟')elif index==4:result.append('万')elif index==5:result.append('拾')elif index==6:result.append('佰')elif index==7:result.append('仟')else:if not zero_flag:zero_flag=Trueresult.append('零')if index==4or index==8:result.append('万')if len(digits)==1or digits[1]=='0': result.append('元整')if len(digits)>1and digits[1]!='0': result.append('元')if len(digits)>1:for index in range(1,len(digits)): if index==1:result.append('角')elif index==2:result.append('分')if digits[index]!='0':result.append('壹贰叁肆伍陆柒捌玖'[int(digits[index])])else:result.append('零元整')return''.join(result[::-1])3.函数公式详解这个函数的输入参数是小写金额digit,小数点后最多只能有两位数字。

Excel中金额大小写转换(解决负数无法显示问题)

Excel中金额大小写转换(解决负数无法显示问题)

Excel中金额大小写转换(解决负数无法显示问题)一、Excel自动转换数字大小写具体的操作步骤如下:1. 启动excel。

按“alt+f11”快捷键打开“visual basic编辑器”。

2. 在“visual basic编辑器”中,单击“插入”菜单栏中的“模块”命令,插入一个模块。

双击左侧“工程”窗口中的“模块1”选项,在窗口右边展开“模块1(代码)”编辑窗口,然后输入如下代码:Function NtoC(n) 'n as singleConstcNum = "零壹贰叁肆伍陆柒捌玖-万仟佰拾亿仟佰拾万仟佰拾元角分"ConstcCha = "零仟零佰零拾零零零零零亿零万零元亿万零角零分零整-零零零零零亿万元亿零整整"NtoC = ""sNum = Trim(Str(Int(n * 100)))For i = 1 To Len(sNum) '逐位转换NtoC = NtoC + Mid(cNum, (Mid(sNum, i, 1)) + 1, 1) + Mid(cNum, 26 - Len(sNum) + i, 1)NextFor i = 0 To 11 '去掉多余的零NtoC = Replace(NtoC, Mid(cCha, i * 2 + 1, 2), Mid(cCha, i + 26, 1))NextEnd Function3.练习A1=-10135.33 A2=NTOC(ABS(A1))二、Excel中金额大小写转换公式公式1:“=IF(ROUND(E19,2)=0,"",IF(ROUND(ABS(E19),2)>=1,TEXT(INT(ROUND(ABS(E19),2)),"[DBNum2]" )&"元","")&IF(RIGHT(TEXT(E19,".00"),2)*1=0,"整",IF(RIGHT(TEXT(E19,".00"),4)*1>=1,IF(RIGHT(TEXT(E19,".00"),2)*1>9,"","零"),IF(ROUND(ABS(E19),2)>=1,"零",""))&IF(RIGHT(TEXT(E19,".00"),2)*1>9,TEXT(LEFT(RIGHT(TEXT(E19,".00"),2)),"[DBNum2]")&"角","")&IF(RIGHT(TEXT(E19,".00"))*1>0,TEXT(RIGHT(TEXT(E19,".00")),"[DBNum2]")&"分","整")))”公式2:“=IF(F4<1,IF(F4<0.1,TEXT(INT(F4*100),"[DBNum2]G/通用格式")&"分",IF((INT(F4*100)-INT(F4*10)*10=0),TEXT(INT(F4*10),"[DBNum2]G/通用格式")&"角整",TEXT(INT(F4*10),"[DBNum2]G/通用格式")&"角"&TEXT(INT(F4*100)-INT(F4*10)*10,"[DBNum2]G/通用格式")&"分")),TEXT(INT(F4),"[DBNum2]G/通用格式"&"元")&IF((INT(F4*10)-INT(F4)*10)=0,IF((INT(F4*100)-INT(F4*10)*10)=0,"","零"),IF((INT(F4*0.1)-INT(F4)*0.1)=0,"零","")&TEXT(INT(F4*10)-INT(F4)*10,"[DBNum2]G/通用格式")&"角")&IF((INT(F4*100)-INT(F4*10)*10)=0,"整",TEXT(INT(F4*100)-INT(F4*10)*10,"[DBNum2]G/通用格式")&"分"))”公式3:“=IF(B10<1,IF(B10<0.1,TEXT(INT(B10*100),"[DBNum2]G/通用格式")&"分",IF((INT(B10*100)-INT(B10*10)*10=0),TEXT(INT(B10*10),"[DBNum2]G/通用格式")&"角整",TEXT(INT(B10*10),"[DBNum2]G/通用格式")&"角"&TEXT(INT(B10*100)-INT(B10*10)*10,"[DBNum2]G/通用格式")&"分")),TEXT(INT(B10),"[DBNum2]G/通用格式"&"元")&IF((INT(B10*10)-INT(B10)*10)=0,IF((INT(B10*100)-INT(B10*10)*10)=0,"","零"),IF((INT(B10*0.1)-INT(B10)*0.1)=0,"零","")&TEXT(INT(B10*10)-INT(B10)*10,"[DBNum2]G/通用格式")&"角")&IF((INT(B10*100)-INT(B10*10)*10)=0,"整",TEXT(INT(B10*100)-INT(B10*10)*10,"[DBNum2]G/通用格式")&"分"))”。

会计大小写转换知识点总结

会计大小写转换知识点总结

会计大小写转换知识点总结在会计领域,大小写转换是一项重要的技术,用于将数字和金额从一种书写形式转换为另一种。

这项技术在报表编制、账务处理以及财务分析等方面都有广泛的应用。

本文将对会计大小写转换的知识点进行总结,帮助读者更好地理解和运用这一技术。

一、会计数字书写规则在会计中,数字可以用阿拉伯数字和汉字来表示。

为了统一数字书写,会计界制定了一套规则:1. 阿拉伯数字书写原则:- 数字以阿拉伯数字0-9表示。

- 金额整数部分要按位数进行分隔,常用的分隔符有千位逗号、千位点等。

- 金额小数部分一般以小数点分隔,例如,0.50 表示50分。

2. 汉字书写原则:- 金额汉字书写通常以基本单位“元”为单位。

- 当金额带有小数部分时,汉字书写分为整数部分和小数部分。

- 汉字整数部分书写遵循“千百十个”的基本单位,例如,1000元可写作“壹仟元”。

- 汉字小数部分书写采用“角”和“分”,例如,0.50元可写作“伍角”。

二、会计数字大小写转换规则会计数字大小写转换主要遵循以下规则:1. 金额整数部分大小写转换:- 阿拉伯数字“0-9”与汉字“零壹贰叁肆伍陆柒捌玖”一一对应。

- 汉字的数值表示中,零只有在十位和个位为空时才书写,例如,101元可写作“壹佰零壹元”。

2. 金额小数部分大小写转换:- 阿拉伯数字“0-9”与汉字“零壹贰叁肆伍陆柒捌玖”一一对应。

- 汉字表示的整数部分后加上“点”,表示小数点。

- 汉字小数部分的数值表示与整数部分一样进行转换。

三、应用场景与注意事项1. 数字金额的大小写转换在报表编制和财务分析中常常会用到。

例如,在报表的正文部分使用阿拉伯数字,而在报表尾部进行大小写合计。

2. 在账务处理中,使用大小写转换可以帮助核对金额是否一致,防止输入错误。

3. 在书写大金额时,需要注意将金额按位数进行分隔,作为金额的读数参考。

4. 在进行金额大小写转换时,应遵循相关的规范和约定,确保书写的准确性。

5. 注意金额转换的单位,例如,百万元应写作“壹仟万元”,而不是“壹佰万”。

EXCEL金额大小写转换公式大全

EXCEL金额大小写转换公式大全

EXCEL‎金额大小写‎转换公式大‎全2007-12-15 16:08先选中需要‎转换的单元‎格,在格式(或者右击设‎置单元格格‎式中)——单元格格式‎——数据——特殊——右边类型:中文小写、中文大写=NUMBE‎R STRI‎N G($A$1,1)1=IF(A5=0,"",CONCA‎TENA T‎E(IF(INT(A5)=0,"",TEXT(INT(A5),"[DBNum‎2]G/通用格式元‎")),IF(INT(MID(RIGHT‎(FIXED‎(A5,2,1),2),1,1))=0,IF(INT(MID(RIGHT‎(FIXED‎(A5,2,1),1),1,1))=0,"",IF(INT(A5)=0,"","零")),TEXT(INT(MID(RIGHT‎(FIXED‎(A5,2,1),2),1,1)),"[DBNum‎2]G/通用格式角‎")),IF(INT(MID(RIGHT‎(FIXED‎(A5,2,1),1),1,1))=0,"整",TEXT(INT(MID(RIGHT‎(FIXED‎(A5,2,1),1),1,1)),"[DBNum‎2]G/通用格式分‎"))))2=IF(A5<0,"負","")&IF(ABS(A5)>1,TEXT(TRUNC‎(ABS(ROUND‎(A5,2))),"[DBNum‎2]")&"元","")&IF(ISERR‎(FIND(".",ROUND‎(A5,2))),"",TEXT(RIGHT‎(TRUNC‎(ROUND‎(A5,2)*10)),"[DBNum‎2]"))&IF(ISERR‎(FIND(".0",TEXT(A5,"0.00"))),"角","")&IF(LEFT(RIGHT‎(ROUND‎(A5,2),3))=".",TEXT(RIGHT‎(ROUND‎(A5,2)),"[DBNum‎2]")&"分","整")3=IF(A5<0,"负","")&IF(TRUNC‎(ROUND‎(A5,2))=0,"",TEXT(TRUNC‎(ABS(ROUND‎(A5,2))),"[DBNum‎2]")&"元")&IF(ISERR‎(FIND(".",ROUND‎(A5,2))),"",TEXT(RIGHT‎(TRUNC‎(ROUND‎(A5,2)*10)),"[DBNum‎2]"))&IF(ISERR‎(FIND(".0",TEXT(A5,"0.00"))),"角","")&IF(LEFT(RIGHT‎(ROUND‎(A5,2),3))=".",TEXT(RIGHT‎(ROUND‎(A5,2)),"[DBNum‎2]")&"分","整")4=SUBST‎ITUTE‎(SUBST‎ITUTE‎(IF(A5<0,"負","")&TEXT(TRUNC‎(ABS(ROUND‎(A5,2))),"[DBNum‎2]")&"元"&IF(ISERR‎(FIND(".",ROUND‎(A5,2))),"",TEXT(RIGHT‎(TRUNC‎(ROUND‎(A5,2)*10)),"[DBNum‎2]"))&IF(ISERR‎(FIND(".0",TEXT(A5,"0.00"))),"角","")&IF(LEFT(RIGHT‎(ROUND‎(A5,2),3))=".",TEXT(RIGHT‎(ROUND‎(A5,2)),"[DBNum‎2]")&"分",IF(ROUND‎(A5,2)=0,"","整")),"零元零",""),"零元","")5=IF(ROUND‎(A5,2)<0,"无效数值",IF(ROUND‎(A5,2)=0,"零",IF(ROUND‎(A5,2)<1,"",TEXT(INT(ROUND‎(A5,2)),"[dbnum‎2]")&"元")&IF(INT(ROUND‎(A5,2)*10)-INT(ROUND‎(A5,2))*10=0,IF(INT(ROUND‎(A5,2))*(INT(ROUND‎(A5,2)*100)-INT(ROUND‎(A5,2)*10)*10)=0,"","零"),TEXT(INT(ROUND‎(A5,2)*10)-INT(ROUND‎(A5,2))*10,"[dbnum‎2]")&"角")&IF((INT(ROUND‎(A5,2)*100)-INT(ROUND‎(A5,2)*10)*10)=0,"整",TEXT((INT(ROUND‎(A5,2)*100)-INT(ROUND‎(A5,2)*10)*10),"[dbnum‎2]")&"分")))6=IF(ISNUM‎B ER(A5),IF(A5<0,"无效数值",IF(A5<0.005,"零",IF(A5<0.995,"",TEXT(INT(A5+0.005),"[dbnum‎2]")&"元")&IF(LEFT(RIGHT‎(FIXED‎(A5,2),2),1)="0",IF(RIGHT‎(FIXED‎(A5,2),1)="0","",IF(A5>0.995,"零","")),TEXT(LEFT(RIGHT‎(FIXED‎(A5,2),2),1),"[dbnum‎2]")&"角")&IF(RIGHT‎(FIXED‎(A5,2),1)="0","整",TEXT(RIGHT‎(FIXED‎(A5,2),1),"[dbnum‎2]")&"分"))),"非数值!")7=IF(ISNUM‎B ER(A5),IF(ROUND‎(A5,2)<0,"无效数值",IF(ROUND‎(A5,2)=0,"零",IF(ROUND‎(A5,2)<1,"",TEXT(INT(ROUND‎(A5,2)),"[dbnum‎2]")&"元")&IF(INT(ROUND‎(A5,2)*10)-INT(ROUND‎(A5,2))*10=0,IF((INT(ROUND‎(A5,2)*100)-INT(ROUND‎(A5,2)*10)*10)=0,"","零"),TEXT(INT(ROUND‎(A5,2)*10)-INT(ROUND‎(A5,2))*10,"[dbnum‎2]")&"角")&IF((INT(ROUND‎(A5,2)*100)-INT(ROUND‎(A5,2)*10)*10)=0,"整",TEXT((INT(ROUND‎(A5,2)*100)-INT(ROUND‎(A5,2)*10)*10),"[dbnum‎2]")&"分"))),"非数值!!!")8=IF(ROUND‎(A5,2)<0,"无效数值",IF(ROUND‎(A5,2)=0,"零",IF(ROUND‎(A5,2)<1,"",TEXT(INT(ROUND‎(A5,2)),"[dbnum‎2]")&"元")&IF(INT(ROUND‎(A5,2)*10)-INT(ROUND‎(A5,2))*10=0,IF(INT(ROUND‎(A5,2))*(INT(ROUND‎(A5,2)*100)-INT(ROUND‎(A5,2)*10)*10)=0,"","零"),TEXT(INT(ROUND‎(A5,2)*10)-INT(ROUND‎(A5,2))*10,"[dbnum‎2]")&"角")&IF((INT(ROUND‎(A5,2)*100)-INT(ROUND‎(A5,2)*10)*10)=0,"整",TEXT((INT(ROUND‎(A5,2)*100)-INT(ROUND‎(A5,2)*10)*10),"[dbnum‎2]")&"分")))9=TEXT(INT(A5),"[dbnum‎2]")&"元"&IF(INT(A5*10)-INT(A5)*10=0,"",TEXT(INT(A5*10)-INT(A5)*10,"[dbnum‎2]")&"角")&IF(INT(A5*100)-INT(A5*10)*10=0,"整",TEXT(INT(A5*100)-INT(A5*10)*10,"[dbnum‎2]")&"分")10Funct‎i on BAITU‎R MBDX‎(ByVal‎n) As Strin‎g 'n as Curre‎n cyConst‎ cNum As Strin‎g = "零壹贰叁肆‎伍陆柒捌玖‎-万仟佰拾亿‎仟佰拾万仟‎佰拾元角分‎" Const‎ cCha As Strin‎g= "零仟零佰零‎拾零零零零‎零亿零万零‎元亿万零角‎零分零整-零零零零零‎亿万元亿零‎整整"Dim sNum As Strin‎gDim i As LongIf (n <> 0) And (Abs(n) < 10000‎00000‎0000#) ThensNum = Trim(Str(Int(Abs(n) * 100)))For i = 1 To Len(sNum) '逐位转换BAITU‎R MBDX‎= BAITU‎R MBDX‎+ Mid(cNum, (Mid(sNum, i, 1)) + 1, 1) + Mid(cNum, 26 - Len(sNum) + i, 1)NextFor i = 0 To 11 '去掉多余的‎零BAITU‎R MBDX‎= Repla‎c e(BAITU‎R MBDX‎, Mid(cCha, i * 2 + 1, 2), Mid(cCha, i + 26, 1)) NextIf n < 0 Then BAITU‎RMBDX‎= "(负)" + BAITU‎RMBDX‎ElseBAITU‎RMBDX‎= IIf(n = 0, "零元", "溢出")End IfEnd Funct‎i on11Funct‎i on Upper‎N um(n) 'n as singl‎e '数字大写函‎数If n < 0 Then正负判断= "负"n = -nEnd Ifn = n + 0.0001If Int(n * 1000) - Int(n * 100) * 10 > 4 Thenn = (Int(n * 100) + 1) / 100 + 0.001Elsen = Int(n * 100) / 100 + 0.001End IfSelec‎t Case nC ase Is > 99999‎99999‎999.99Upper‎N um = "数据不符"MsgBo‎x "金额不能大‎于9999‎99999‎9999.99!", vbOKO‎nl y, "出错提示"Case ElseConst‎ cNum = "零壹贰叁肆‎伍陆柒捌玖‎-万仟佰拾亿‎仟佰拾万仟‎佰拾元角分‎"Const‎ cCha = "零仟零佰零‎拾零零零零‎零亿零万零‎元亿万零角‎零分零整-零零零零零‎亿万元亿零‎整整"Upper‎N um = ""sNum = ""s = Trim(Str(n))For i = 1 To Len(s) - 1If Mid(s, i, 1) <> "." Then sNum = sNum + Mid(s, i, 1)Next iFor i = 1 To Len(sNum) '逐位转换U pper‎N um = Upper‎N um + Mid(cNum, (Mid(sNum, i, 1)) + 1, 1) + Mid(cNum, 26 - Len(sNum) + i, 1)Next iFor i = 0 To 11 '去掉多余的‎零U pper‎N um = Repla‎c e(Upper‎N um, Mid(cCha, i * 2 + 1, 2), Mid(cCha, i + 26, 1)) Next iEnd Selec‎tIf 正负判断= "负" Then Upper‎N um = "负" & Upper‎N umEnd Funct‎i on12Funct‎i on JEZH(X As Range‎)If X >= 1 ThenIf Int(X) = X Or Round‎(X, 2) = Int(X) ThenJEZH = Appli‎c atio‎n.Works‎h eetF‎u ncti‎o n.Text(Int(X), "[DBNUM‎2]") & "元"ElseI‎f Int(X * 10) = X * 10 Or Int(X * 10) = Round‎(X, 2) * 10 ThenJEZH = Appli‎c atio‎n.Works‎h eetF‎u ncti‎o n.Text(Int(X), "[DBNUM‎2]") & "元" & Appli‎catio‎n.Works‎h eetF‎u ncti‎o n.Text(Right‎(Round‎(X, 2), 1), "[DBNUM‎2]") & "角"ElseJEZH = Appli‎c atio‎n.Works‎h eetF‎u ncti‎o n.Text(Int(X), "[DBNUM‎2]") & "元" & Appli‎catio‎n.Works‎h eetF‎u ncti‎o n.Text(Left(Right‎(Round‎(X, 2), 2), 1), "[DBNUM‎2]") & "角" & Appli‎catio‎n.Works‎h eetF‎u ncti‎o n.Text(Right‎(Round‎(X, 2), 1), "[DBNUM‎2]") & "分"End IfElseI‎f X = 0 ThenJEZH = Appli‎c atio‎n.Works‎h eetF‎u ncti‎o n.Text(Int(X), "[DBNUM‎2]") & "元"ElseI‎f X < 1 And X > 0 ThenIf Int(X * 10) = X * 10 ThenJEZH = Appli‎c atio‎n.Works‎h eetF‎u ncti‎o n.Text(Right‎(X, 1), "[DBNUM‎2]") & "角"ElseJEZH = Appli‎c atio‎n.Works‎h eetF‎u ncti‎o n.Text(Left(Right‎(Round‎(X, 2), 2), 1), "[DBNUM‎2]") & "角" & Appli‎c atio‎n.Works‎h eetF‎u ncti‎o n.Text(Right‎(Round‎(X, 2), 1), "[DBNUM‎2]") & "分"End IfElseIf Int(X) = X Or Round‎(Abs(X), 2) = Int(Abs(X)) ThenJEZH = "负" & Appli‎ca tio‎n.Works‎h eetF‎u ncti‎o n.Text(Int(Abs(X)), "[DBNUM‎2]") & "元"ElseI‎f Int(X * 10) = X * 10 ThenJEZH = "负" & Appli‎c atio‎n.Works‎h eetF‎u ncti‎o n.Text(Int(Abs(X)), "[DBNUM‎2]") & "元" & Appli‎c atio‎n.W orks‎h eetF‎u ncti‎o n.Text(Right‎(X, 1), "[DBNUM‎2]") & "角"ElseJEZH = "负" & Appli‎c atio‎n.Works‎h eetF‎u ncti‎o n.Text(Int(Abs(X)), "[DBNUM‎2]") & "元" & Appli‎ca tio‎n.Works‎h eetF‎u ncti‎o n.Text(Left(Right‎(Round‎(X, 2), 2), 1), "[DBNUM‎2]") & "角" & Appli‎c atio‎n.Works‎h eetF‎u ncti‎o n.Text(Right‎(Round‎(X, 2), 1), "[DBNUM‎2]") & "分"End IfEnd IfEnd Funct‎i on。

人民币小写转大写公式汇总

人民币小写转大写公式汇总

人民币小写转换大写公式1、公式=IF(A1="","",IF(A1<0,"负",)&IF(INT(A1),TEXT(INT(ABS(A1)),"[dbnum2]")&"元",)&IF(INT(ABS(A1)*10)-INT(ABS(A1))*10,TEXT(INT(ABS(A1)*10)-INT(ABS(A1))*10,"[db num2]")&"角",IF(INT(ABS(A1))=ABS(A1),,IF(ABS(A1)<0.1,,"零")))&IF(ROUND(ABS(A1)*100-INT(ABS(A1)*10)*10,),TEXT(ROUND(ABS(A1)*100-INT(ABS(A1 )*10)*10,),"[dbnum2]")&"分","整"))2、公式=SUBSTITUTE(SUBSTITUTE(TEXT(TRUNC(FIXED(A1)),"[dbnum2]G/通用格式元;负[dbnum2]G/通用格式元;"&IF(A1>-0.5%,,"负"))&TEXT(RIGHT(FIXED(A1),2),"[dbnum2]0角0分;;"&IF(ABS(A1)>1%,"整",)),"零角",IF(ABS(A1)<1,,"零")),"零分","整")3、公式=TEXT(RMB(ROUND(A1,)),"[=]g;"&TEXT(INT(ABS(ROUND(A1,))+0.5%),"[dbnum2]G/通用格式元;;")&SUBSTITUTE(SUBSTITUTE(TEXT(RIGHT(RMB(ROUND(A1,)),2),"[dbnum2]0角0分;;整"),"零角",IF(ROUND(A1,)^2<1,,"零")),"零分","整"))4、公式=IF(M9<0,"负","")&TEXT(TRUNC(ABS(ROUND(M9,2))),"[DBNum2]")&"元"&IF(ISERR(FIND(".",ROUND(M9,2))),"",TEXT(RIGHT(TRUNC(ROUND(M9,2)*10)),"[DBNum2] "))&IF(ISERR(FIND(".0",TEXT(M9,"0.00"))),"角","")&IF(LEFT(RIGHT(ROUND(M9,2),3))=".",TEXT(RIGHT(ROUND(M9,2)),"[DBNum2]")&"分","整")5. 公式=SUBSTITUTE(IF(-RMB(A2),IF(A2>0,,"负")&TEXT(INT(ABS(A2)+0.5%),"[dbnum2]G/通用格式元;;")&TEXT(RIGHT(RMB(A2),2),"[>9][dbnum2]0角0分;"&IF(A2^2<1,,0)&"[>][dbnum2]0分;整"),),"零分","整")6. 公式=SUBSTITUTE(SUBSTITUTE(IF(-RMB(A2),IF(A2>0,,"负")&TEXT(INT(ABS(A2)+0.5%),"[dbnum2]G/通用格式元;;")&TEXT(RIGHT(RMB(A2),2),"[dbnum2]0角0分;;整"),),"零角",IF(A2^2<1,,"零")),"零分","整")7. 公式="大写人民币:"&IF(TRUNC(A1)=0,"",TEXT(TRUNC(A1),"[DBNum2]G/通用格式")&"元")&IF(TRUNC(A1*10)-TRUNC(A1*10,-1)=0,"",TEXT(TRUNC(A1*10)-TRUNC(A1*10,-1),"[DBNu m2]G/通用格式")&"角")&IF(TRUNC(A1*100)-TRUNC(A1*100,-1)=0,"",TEXT(TRUNC(A1*100)-TRUNC(A1*100,-1),"[ DBNum2]G/通用格式")&"分")&IF(TRUNC(A1*100)-TRUNC(A1*100,-1)=0,"整","")8、公式=SUBSTITUTE(SUBSTITUTE(IF(A1<0,"负","")&TEXT(TRUNC(ABS(ROUND(A1,2))),"[DBNum2]")&"元"&IF(ISERR(FIND(".",ROUND(A1,2))),"",TEXT(RIGHT(TRUNC(ROUND(A1,2)*10)),"[DBNum2] "))&IF(ISERR(FIND(".0",TEXT(A1,"0.00"))),"角","")&IF(LEFT(RIGHT(ROUND(A1,2),3))=".",TEXT(RIGHT(ROUND(A1,2)),"[DBNum2]")&"分",IF(ROUND(A1,2)=0,"","整")),"零元零",""),"零元","")9、公式=CONCATENATE(IF(A1<0,"负",""),TEXT(IF(TRUNC(A1)=0,"",TRUNC(ABS(A1))),"[DBNum2]"),IF(INT(TRUNC(A1))=0,"", "元"),TEXT(IF(OR(ABS(A1)<0.1,TRUNC(A1)=A1),"",RIGHT(TRUNC(A1*10),1)),"[DBNum2]"),IF (RIGHT(TRUNC(A1*10),1)="0","","角"),TEXT(IF(RIGHT(TRUNC(A1*100),1)="0","",RIGHT(TRUNC(A1*100),1)),"[DBNum2]"),IF( RIGHT(TRUNC(A1*100),1)="0","","分"))10、公式=IF(A1=0,"",IF(ABS(A1)<0.995,"",TEXT(INT(ROUND(ABS(A1),2)),"[DBNum2]")&"元")&IF(RIGHT(TEXT(A1,".00"),2)*1=0,IF(ABS(A1)<0.005,"","整"),TEXT(IF(ABS(A1)<0.095,"",LEFT(RIGHT(TEXT(A1,".00"),2))),"[dbnum2]")&IF(LEFT(R IGHT(TEXT(A1,".00"),2))*1=0,"","角")&IF(RIGHT(TEXT(A1,".00"))*1=0,"整",TEXT(RIGHT(TEXT(A1,".00")),"[dbnum2]")&"分")))11、公式=IF(A1=0,"",IF(ABS(A1)<1,"",TEXT(TRUNC(ABS(A1)),"[DBNum2]")&"元")&IF(RIGHT(TRUNC(A1*100),2)*1=0,IF(ABS(A1)<0.01,"","整"),IF(ABS(A1)<0.1,"",TEXT(RIGHT(TRUNC(A1*10)),"[dbnum2]"))&IF(RIGHT(TRUNC(A1*10) )*1=0,"","角")&IF(RIGHT(TRUNC(A1*100))*1=0,"整",TEXT(RIGHT(TRUNC(A1*100)),"[dbnum2]")&"分")))12.公式=IF(a1<0,"负","")&IF(a1=0,"",IF(ABS(a1)<0.995,"",TEXT(INT(ROUND(ABS(a1),2)),"[dbnum2]")&"元")&IF(RIGHT(TEXT(a1,".00"),2)="00",IF(ABS(a1)<0.005,"","整"),IF(ABS(a1)<0.095,"",TEXT(V ALUE(LEFT(RIGHT(TEXT(a1,".00"),2),1)),"[dbnum2]"))&IF(LEFT(RIGHT(T EXT(a1,".00"),2),1)="0","","角")&IF(RIGHT(TEXT(a1,".00"),1)="0","整",TEXT(V ALUE(RIGHT(TEXT(a1,".00"),1)),"[dbnum2]")&"分")))13、公式=IF(H14=0,"",CONCATENATE(IF(INT(ABS(H14))=0,"",TEXT(INT(ABS(H14)),"[DBNum2]G/通用格式元")),IF(INT(MID(RIGHT(FIXED(ABS(H14),2,1),2),1,1))=0,IF(INT(MID(RIGHT(FIXED(H14,2 ,1),1),1,1))=0,"",IF(INT(ABS(H14))=0,"","零")),TEXT(INT(MID(RIGHT(FIXED(H14,2,1),2),1,1)),"[DBNum2]G/通用格式角")),IF(INT(MID(RIGHT(FIXED(H14,2,1),1),1,1))=0,"整",TEXT(INT(MID(RIGHT(FIXED(H14,2,1),1),1,1)),"[DBNum2]G/通用格式分"))))14. 公式=IF(I17<0,"金额为负无效",IF(OR(I17=0,I17=""),"零元整",IF(I17<1,"",TEXT(INT(I17),"[DBNum2]G/通用格式")&"元")&IF(INT(I17*10)-INT(I17)*10=0,IF(INT(I17)*(INT(I17*100)-INT(I17*10)*10)=0,"","零"),TEXT(INT(I17*10)-INT(I17)*10,"[DBNum2]G/通用格式")&"角")&IF((INT(I17*100)-INT(I17*10)*10)=0,"整",TEXT((INT(I17*100)-INT(I17*10)*10),"[DBNum2]G/通用格式")&"分")))15. 公式=IF(ROUND(A1,2)=0,"",IF(ROUND(ABS(A1),2)>=1,TEXT(INT(ROUND(ABS(A1),2)),"[DBNum2] ")&"元","")&IF(RIGHT(TEXT(A1,".00"),2)*1=0,"整",IF(RIGHT(TEXT(A1,".00"),4)*1>=1,IF(RIGHT(TEXT(A1,".00"),2)*1>9,"","零"),IF(ROUND(ABS(A1),2)>=1,"零",""))&IF(RIGHT(TEXT(A1,".00"),2)*1>9,TEXT(LEFT(RIGHT(TEXT(A1,".00"),2)),"[DBNum 2]")&"角","")&IF(RIGHT(TEXT(A1,".00"))*1>0,TEXT(RIGHT(TEXT(A1,".00")),"[DBNum2]")&"分","整")))16. 公式="大写金额:"&IF(ROUND(A1,2)<0,"无效数值",IF(ROUND(A1,2)=0,"零",IF(ROUND(A1,2)<1,"",TEXT(INT(ROUND(A1,2)),"[dbnum2]")&"元")&IF(INT(ROUND(A1,2)*10)-INT(ROUND(A1,2))*10=0,IF(INT(ROUND(A1,2))*(INT(ROUND(A1,2)*100)-INT(ROUND(A1,2)*10)*10)=0,"","零"),TEXT(INT(ROUND(A1,2)*10)-INT(ROUND(A1,2))*10,"[dbnum2]")&"角")&IF((INT(ROUND(A1,2)*100)-INT(ROUND(A1,2)*10)*10)=0,"整",TEXT((INT(ROUND(A1,2)*100)-INT(ROUND(A1,2)*10)*10),"[dbnum2]")&"分")))17. 公式=IF(MOD(B2,1)=0,TEXT(INT(B2),"[dbnum2]G/通用格式元整;负[dbnum2]G/通用格式元整;零元整;"),IF(B2>0,,"负")&TEXT(INT(ABS(B2)),"[dbnum2]G/通用格式元;;")&SUBSTITUTE(SUBSTITUTE(TEXT(RIGHT(FIXED(B2),2),"[dbnum2]0角0分;;"),"零角",IF(ABS(B2)<>0,,"零")),"零分",""))18、公式=TEXT(MID(INT(B1),1,1),"[dbnum2]")&CHOOSE(LEN(INT(B1)),"圆","拾","佰","仟","万","拾万")&IF(LEN(INT(B1))-1<=0,"",TEXT(MID(INT(B1),2,1),"[dbnum2]")&CHOOSE(LEN(INT(B1)) -1,"圆","拾","佰","仟","万","拾万"))&IF(LEN(INT(B1))-2<=0,"",TEXT(MID(INT(B1),3,1),"[dbnum2]")&CHOOSE(LEN(INT(B1) )-2,"圆","拾","佰","仟","万","拾万"))&IF(LEN(INT(B1))-3<=0,"",TEXT(MID(INT(B1),4,1),"[dbnum2]")&CHOOSE(LEN(INT(B1) )-3,"圆","拾","佰","仟","万","拾万"))&IF(LEN(INT(B1))-4<=0,"",TEXT(MID(INT(B1),5,1),"[dbnum2]")&CHOOSE(LEN(INT(B1) )-4,"圆","拾","佰","仟","万","拾万"))&IF(LEN(INT(B1))-5<=0,"",TEXT(MID(INT(B1),6,1),"[dbnum2]")&CHOOSE(LEN(INT(B1) )-5,"圆","拾","佰","仟","万","拾万"))&IF(B1-INT(B1)=0,"零角零分",IF(LEN(ROUND(B1-INT(B1),2))=3,TEXT(RIGHT(ROUND(B1-INT(B1),2),1),"[dbnum2]")&"角零分",TEXT(MID(ROUND(B1-INT(B1),2),3,1),"[dbnum2]")&"角"&TEXT(RIGHT(ROUND(B1-INT(B1),2),1),"[dbnum2]")&"分"))。

EXCEL金额大小写转换公式大全

EXCEL金额大小写转换公式大全

EXCEL金额大小写转换公式大全2007-12-15 16:08先选中需要转换的单元格,在格式(或者右击设置单元格格式中)——单元格格式——数据——特殊——右边类型:中文小写、中文大写=NUMBERSTRING($A$1,1)1=IF(A5=0,"",CONCATENATE(IF(INT(A5)=0,"",TEXT(INT(A5),"[DBNum2]G/通用格式元")),IF(INT(MID(RIGHT(FIXED(A5,2,1),2),1,1))=0,IF(INT(MID(RIGHT(FIXED( A5,2,1),1),1,1))=0,"",IF(INT(A5)=0,"","零")),TEXT(INT(MID(RIGHT(FIXED(A5,2,1),2),1,1)),"[DBNum2]G/通用格式角")),IF(INT(MID(RIGHT(FIXED(A5,2,1),1),1,1))=0,"整",TEXT(INT(MID(RIGHT(FIXED(A5,2,1),1),1,1)),"[DBNum2]G/通用格式分"))))2=IF(A5<0,"負","")&IF(ABS(A5)>1,TEXT(TRUNC(ABS(ROUND(A5,2))),"[DBNum2]")&"元","")&IF(ISERR(FIND(".",ROUND(A5,2))),"",TEXT(RIGHT(TRUNC(ROUND(A5,2) *10)),"[DBNum2]"))&IF(ISERR(FIND(".0",TEXT(A5,"0.00"))),"角","")&IF(LEFT(RIGHT(ROUND(A5,2),3))=".",TEXT(RIGHT(ROUND(A5,2)),"[DBN um2]")&"分","整")3=IF(A5<0,"负","")&IF(TRUNC(ROUND(A5,2))=0,"",TEXT(TRUNC(ABS(ROUND(A5,2))),"[DBNum 2]")&"元")&IF(ISERR(FIND(".",ROUND(A5,2))),"",TEXT(RIGHT(TRUNC(ROUND(A5,2)*10 )),"[DBNum2]"))&IF(ISERR(FIND(".0",TEXT(A5,"0.00"))),"角","")&IF(LEFT(RIGHT(ROUND(A5,2),3))=".",TEXT(RIGHT(ROUND(A5,2)),"[DBN um2]")&"分","整")4=SUBSTITUTE(SUBSTITUTE(IF(A5<0,"負","")&TEXT(TRUNC(ABS(ROUND(A5,2))),"[DBNum2]")&"元"&IF(ISERR(FIND(".",ROUND(A5,2))),"",TEXT(RIGHT(TRUNC(ROUND(A5,2)*10) ),"[DBNum2]"))&IF(ISERR(FIND(".0",TEXT(A5,"0.00"))),"角","")&IF(LEFT(RIGHT(ROUND(A5,2),3))=".",TEXT(RIGHT(ROUND(A5,2)),"[DBN um2]")&"分",IF(ROUND(A5,2)=0,"","整")),"零元零",""),"零元","")5=IF(ROUND(A5,2)<0,"无效数值",IF(ROUND(A5,2)=0,"零",IF(ROUND(A5,2)<1,"",TEXT(INT(ROUND(A5,2)),"[dbnum2]")&"元")&IF(INT(ROUND(A5,2)*10)-INT(ROUND(A5,2))*10=0,IF(INT(ROUND(A5,2))*( INT(ROUND(A5,2)*100)-INT(ROUND(A5,2)*10)*10)=0,"","零"),TEXT(INT(ROUND(A5,2)*10)-INT(ROUND(A5,2))*10,"[dbnum2]")&"角")&IF((INT(ROUND(A5,2)*100)-INT(ROUND(A5,2)*10)*10)=0,"整",TEXT((INT(ROUND(A5,2)*100)-INT(ROUND(A5,2)*10)*10),"[dbnum2]")&"分")))6=IF(ISNUMBER(A5),IF(A5<0,"无效数值",IF(A5<0.005,"零",IF(A5<0.995,"",TEXT(INT(A5+0.005),"[dbnum2]")&"元")&IF(LEFT(RIGHT(FIXED(A5,2),2),1)="0",IF(RIGHT(FIXED(A5,2),1)="0","" ,IF(A5>0.995,"零","")),TEXT(LEFT(RIGHT(FIXED(A5,2),2),1),"[dbnum2]")&"角")&IF(RIGHT(FIXED(A5,2),1)="0","整",TEXT(RIGHT(FIXED(A5,2),1),"[dbnum2]")&"分"))),"非数值!")7=IF(ISNUMBER(A5),IF(ROUND(A5,2)<0,"无效数值",IF(ROUND(A5,2)=0,"零",IF(ROUND(A5,2)<1,"",TEXT(INT(ROUND(A5,2)),"[dbnum2]")&"元")&IF(INT(ROUND(A5,2)*10)-INT(ROUND(A5,2))*10=0,IF((INT(ROUND(A5,2)*1 00)-INT(ROUND(A5,2)*10)*10)=0,"","零"),TEXT(INT(ROUND(A5,2)*10)-INT(ROUND(A5,2))*10,"[dbnum2]")&"角")&IF((INT(ROUND(A5,2)*100)-INT(ROUND(A5,2)*10)*10)=0,"整",TEXT((INT(ROUND(A5,2)*100)-INT(ROUND(A5,2)*10)*10),"[dbnum2]")&"分"))),"非数值!!!")8=IF(ROUND(A5,2)<0,"无效数值",IF(ROUND(A5,2)=0,"零",IF(ROUND(A5,2)<1,"",TEXT(INT(ROUND(A5,2)),"[dbnum2]")&"元")&IF(INT(ROUND(A5,2)*10)-INT(ROUND(A5,2))*10=0,IF(INT(ROUND(A5,2))*( INT(ROUND(A5,2)*100)-INT(ROUND(A5,2)*10)*10)=0,"","零"),TEXT(INT(ROUND(A5,2)*10)-INT(ROUND(A5,2))*10,"[dbnum2]")&"角")&IF((INT(ROUND(A5,2)*100)-INT(ROUND(A5,2)*10)*10)=0,"整",TEXT((INT(ROUND(A5,2)*100)-INT(ROUND(A5,2)*10)*10),"[dbnum2]")&"分")))9=TEXT(INT(A5),"[dbnum2]")&"元"&IF(INT(A5*10)-INT(A5)*10=0,"",TEXT(INT(A5*10)-INT(A5)*10,"[dbnum2]" )&"角")&IF(INT(A5*100)-INT(A5*10)*10=0,"整",TEXT(INT(A5*100)-INT(A5*10)*10,"[dbnum2]")&"分")10Function BAITURMBDX(ByVal n) As String 'n as CurrencyConst cNum As String = "零壹贰叁肆伍陆柒捌玖-万仟佰拾亿仟佰拾万仟佰拾元角分"Const cCha As String = "零仟零佰零拾零零零零零亿零万零元亿万零角零分零整-零零零零零亿万元亿零整整"Dim sNum As StringDim i As LongIf (n <> 0) And (Abs(n) < 10000000000000#) ThensNum = Trim(Str(Int(Abs(n) * 100)))For i = 1 To Len(sNum) '逐位转换BAITURMBDX = BAITURMBDX + Mid(cNum, (Mid(sNum, i, 1)) + 1, 1) + Mid(cNum, 26 - Len(sNum) + i, 1)NextFor i = 0 To 11 '去掉多余的零BAITURMBDX = Replace(BAITURMBDX, Mid(cCha, i * 2 + 1, 2), Mid(cCha, i + 26, 1))NextIf n < 0 Then BAITURMBDX = "(负)" + BAITURMBDXElseBAITURMBDX = IIf(n = 0, "零元", "溢出")End IfEnd Function11Function UpperNum(n) 'n as single '数字大写函数If n < 0 Then正负判断 = "负"n = -nEnd Ifn = n + 0.0001If Int(n * 1000) - Int(n * 100) * 10 > 4 Thenn = (Int(n * 100) + 1) / 100 + 0.001Elsen = Int(n * 100) / 100 + 0.001End IfSelect Case nCase Is > 9999999999999.99UpperNum = "数据不符"MsgBox "金额不能大于9999999999999.99!", vbOKOnly, "出错提示"Case ElseConst cNum = "零壹贰叁肆伍陆柒捌玖-万仟佰拾亿仟佰拾万仟佰拾元角分"Const cCha = "零仟零佰零拾零零零零零亿零万零元亿万零角零分零整-零零零零零亿万元亿零整整"UpperNum = ""sNum = ""s = Trim(Str(n))For i = 1 To Len(s) - 1If Mid(s, i, 1) <> "." Then sNum = sNum + Mid(s, i, 1)Next iFor i = 1 To Len(sNum) '逐位转换UpperNum = UpperNum + Mid(cNum, (Mid(sNum, i, 1)) + 1, 1) + Mid(cNum, 26 - Len(sNum) + i, 1)Next iFor i = 0 To 11 '去掉多余的零UpperNum = Replace(UpperNum, Mid(cCha, i * 2 + 1, 2), Mid(cCha, i + 26, 1))Next iEnd SelectIf 正负判断 = "负" Then UpperNum = "负" & UpperNumEnd Function12Function JEZH(X As Range)If X >= 1 ThenIf Int(X) = X Or Round(X, 2) = Int(X) ThenJEZH = Application.WorksheetFunction.Text(Int(X), "[DBNUM2]") &ElseIf Int(X * 10) = X * 10 Or Int(X * 10) = Round(X, 2) * 10 Then JEZH = Application.WorksheetFunction.Text(Int(X), "[DBNUM2]") & "元" & Application.WorksheetFunction.Text(Right(Round(X, 2), 1), "[DBNUM2]") & "角"ElseJEZH = Application.WorksheetFunction.Text(Int(X), "[DBNUM2]") & "元" & Application.WorksheetFunction.Text(Left(Right(Round(X, 2), 2), 1), "[DBNUM2]") & "角" &Application.WorksheetFunction.Text(Right(Round(X, 2), 1), "[DBNUM2]") & "分"End IfElseIf X = 0 ThenJEZH = Application.WorksheetFunction.Text(Int(X), "[DBNUM2]") & "元"ElseIf X < 1 And X > 0 ThenIf Int(X * 10) = X * 10 ThenJEZH = Application.WorksheetFunction.Text(Right(X, 1), "[DBNUM2]") & "角"ElseJEZH = Application.WorksheetFunction.Text(Left(Right(Round(X, 2), 2), 1), "[DBNUM2]") & "角" &Application.WorksheetFunction.Text(Right(Round(X, 2), 1), "[DBNUM2]") & "分"End IfElseIf Int(X) = X Or Round(Abs(X), 2) = Int(Abs(X)) ThenJEZH = "负" & Application.WorksheetFunction.Text(Int(Abs(X)), "[DBNUM2]") & "元"ElseIf Int(X * 10) = X * 10 ThenJEZH = "负" & Application.WorksheetFunction.Text(Int(Abs(X)), "[DBNUM2]") & "元" & Application.WorksheetFunction.Text(Right(X, 1), "[DBNUM2]") & "角"ElseJEZH = "负" & Application.WorksheetFunction.Text(Int(Abs(X)), "[DBNUM2]") & "元" &Application.WorksheetFunction.Text(Left(Right(Round(X, 2), 2), 1), "[DBNUM2]") & "角" & Application.WorksheetFunction.Text(Right(Round(X, 2), 1), "[DBNUM2]") & "分"End IfEnd Function。

小写金额转换大写金额函数公式

小写金额转换大写金额函数公式

小写金额转换大写金额函数公式在日常生活和工作中,我们经常需要将小写金额转换为大写金额,以便更清楚地表达金额的大小。

而实现这一功能的方法之一就是使用小写金额转换大写金额函数公式。

这个函数公式可以帮助我们将数字金额转换为汉字表示的金额,使其更易于理解和使用。

下面,我们将介绍一种常用的小写金额转换大写金额函数公式,并探讨其应用。

小写金额转换大写金额的函数公式通常由若干个数学运算和汉字表示组成。

为了避免使用数学公式和计算公式,我们将用文字来描述这个函数公式。

这个函数公式的核心思想是将小写金额按照一定的规则进行划分,然后根据这个划分将小写金额转换为大写金额。

具体步骤如下:1. 首先,将小写金额按照整数部分和小数部分进行划分。

整数部分表示金额的整数部分,小数部分表示金额的小数部分。

2. 然后,将整数部分按照一定的规则进行划分。

通常情况下,我们将整数部分划分为四位一组的形式,例如将小写金额123456789划分为1,2345,6789。

3. 接下来,根据划分后的整数部分,使用汉字表示的金额来表达每个四位数的大小。

例如,将1,2345,6789转换为壹亿贰仟叁佰肆拾伍万陆仟柒佰捌拾玖元。

4. 最后,将小数部分按照一定的规则转换为汉字表示的金额。

通常情况下,我们将小数部分的每一位转换为对应的汉字,例如将0.99转换为零点玖玖。

通过这个小写金额转换大写金额函数公式,我们可以将任意小写金额转换为对应的大写金额。

这个函数公式不仅简单易用,而且能够准确地将小写金额转换为大写金额,避免了计算错误和表达不清的问题。

除了在日常生活和工作中使用,小写金额转换大写金额函数公式还可以应用于金融、财务等领域。

例如,在银行业务中,我们经常需要将数字金额转换为汉字金额,以便更好地理解和处理金额的大小。

而小写金额转换大写金额函数公式可以帮助银行员工快速准确地完成这个转换过程,提高工作效率和准确性。

总结起来,小写金额转换大写金额函数公式是一种将小写金额转换为大写金额的方法。

Excel金额大小写转换及保留2位小数的函数公式

Excel金额大小写转换及保留2位小数的函数公式

一、金额大小写转换假设数据源在单元格G5,目标单元格是D1,在D1单元格输入如下公式:=SUBSTITUTE(SUBSTITUTE(IF(G5>-0.5%,,"负")&TEXT(INT(ABS(G5)+0.5%),"[dbnum2]G/通用格式元;;")&TEXT(RIGHT(FIXED(G5),2),"[dbnum2]0角0分;;"&IF(ABS(G5)>1%,"整",)),"零角",IF(ABS(G5)<1,,"零")),"零分","整")其实用下面这个就可以了,依我看上面公式中的&IF(ABS(G5)>1%,"整",)是多余的!=SUBSTITUTE(SUBSTITUTE(IF(G5>-0.5%,,"负")&TEXT(INT(ABS(G5)+0.5%),"[dbnum2]G/通用格式元;;")&TEXT(RIGHT(FIXED(G5),2),"[dbnum2]0角0分;;"),"零角",IF(ABS(G5)<1,,"零")),"零分","整")1、这个公式中用了SUBSTITUTE()、IF()、TEXT()、INT ()、ABS()、RIGHT()、FIXED()七个函数,其中TEXT()函数的两次使用都是运用了高级应用,这也是本公式最难看懂的地方,另个为了符合人民币的读数规则;两次使用了SUBSTITUTE()对出现不符合读数规定的字符用有效字符替换,这一点也很重要。

2、本题的基本思路是:一是用IF函数判断需要转换数据的正、负(如果是正数就不用在数值前显示“正”,负则必须显示“负”字);二是用ABS函数对数据源数值进行求绝对值,然后用IND函数对这个绝对值截取整数部分的数值,再把整数部分的数值交由TEXT函数转换成中文大写;三是对小数部分的数值处理,通过用FIXED函数对源数据进行四舍五入保留2位有效数字并用文本显示,然后用RIGHT 函数将显示的文本从右边截取两位数值(即保留的小数位数据),再把这两位数交由TEXT函数转换成中文大写;四是人民币大写最后有个“整”字也补上。

中文大写金额的转换方法

中文大写金额的转换方法

中文大写金额的转换方法
将金额转换为中文大写的方法如下:
1. 将金额分为整数部分和小数部分,分别进行转换。

2. 将整数部分转换为中文大写数字。

一般来说,中文大写数字有以下几个规律:
- 数字 0 到 10 分别对应“零”、“壹”、“贰”、“叁”、“肆”、“伍”、“陆”、“柒”、“捌”、“玖”、“拾”。

- 千位、万位、亿位等整数位上的数字依次对应“仟”、“佰”、“拾”、“万”、“仟”、“佰”、“拾”、“亿”、“仟”、“佰”、“拾”等单位。

- 若某一位上的数字为 0,需要注意不重复出现 0,而是直接
跳过该位。

- 若某一位和其后面(权值较低)位上的数字都为 0,也需
要注意不重复出现单位。

3. 将小数部分转换为中文大写数字。

小数部分一般只有两位数,可以直接按照数字对应的中文大写写出即可,如“角”和“分”。

4. 合并整数部分和小数部分的转换结果,用“元”连接。

例如,假设金额为 12345.67,转换为中文大写金额的过程如下:
整数部分的转换:
12 345 的中文大写为“壹万贰仟叁佰肆拾伍”。

小数部分的转换:
67 的中文大写为“陆角柒分”。

合并整数和小数部分的结果:
“壹万贰仟叁佰肆拾伍元陆角柒分”。

excel小写转大写金额的三种常见方法Excel人民币金额自动大写

excel小写转大写金额的三种常见方法Excel人民币金额自动大写

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金额大小写转换公式大全

EXCEL金额大小写转换公式大全在Excel中,可以使用以下公式将金额从数字形式转换为大写形式:1.数字转换为大写金额:=IF(A1<0,"负","")&NUMBERTEXT(ABS(A1))这个公式将数字转换为大写金额。

如果数字为负数,则在转换后的金额前面加上“负”字样。

2.人民币大写金额:=TEXT(NUMBERTEXT(A1),"[DBNum2][$¥-804]")&"整"此公式将数字转换为人民币大写金额,并在金额后面加上“整”字样。

3.美元大写金额:=TEXT(A1,"[$-409]0")&"美元整"此公式将数字转换为美元大写金额,并在金额后面加上“美元整”字样。

4.英文大写金额:=PROPER(TEXT(A1,"[ENG11A]General Number")) & " DOLLARS"此公式将数字转换为英文大写金额,并在金额后面加上“DOLLARS”。

5.澳大利亚元大写金额:=TEXT(A1,"[$-C09]0") & " Australian Dollars"此公式将数字转换为澳大利亚元大写金额,并在金额后面加上“Australian Dollars”。

6.日元大写金额:=TEXT(A1,"[$¥-411]")&"日元整"此公式将数字转换为日元大写金额,并在金额后面加上“日元整”。

7.欧元大写金额:=TEXT(A1,"[$€-40C]")&"欧元整"此公式将数字转换为欧元大写金额,并在金额后面加上“欧元整”。

8.加拿大元大写金额:=TEXT(A1,"[$C0A]") & " Canadian Dollars"此公式将数字转换为加拿大元大写金额,并在金额后面加上“Canadian Dollars”。

中文金额大小写转换公式模板

中文金额大小写转换公式模板

中文金额大小写转换公式模板```#定义数字字符对应的中文大写字符digits = ['零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖']#定义单位字符对应的中文大写字符units = ['', '拾', '佰', '仟', '万', '亿']#将阿拉伯数字表示的金额转换为中文表示的金额def convert_amount_to_chinese(amount):#将金额转换为字符串amount_str = str(amount)#判断金额是否合法if not amount_str.isdigit(:return '金额不合法'#去除金额首部的零amount_str = amount_str.lstrip('0')#如果金额为0,直接返回“零元整”if amount_str == '0':return '零元整'#分割金额的整数部分和小数部分integer_part, decimal_part = amount_str.split('.') #转换整数部分的金额chinese_amount =convert_integer_part_to_chinese(integer_part) + '元' #当小数部分为00时,添加“整”if decimal_part == '00':chinese_amount += '整'else:#转换小数部分的金额chinese_amount +=convert_decimal_part_to_chinese(decimal_part) return chinese_amount#将整数部分的金额转换为中文表示def convert_integer_part_to_chinese(integer_part): #反转整数部分字符串,便于从低位到高位处理integer_part = integer_part[::-1]#初始化中文表示的整数部分金额字符串chinese_amount = ''#判断整数部分是否为零if integer_part == '0':return '零'#迭代处理整数部分的每一位for i, digit in enumerate(integer_part):#当前数字为零时,如果下一位数字也为零,则跳过if digit == '0' and i + 1 < len(integer_part) andinteger_part[i + 1] == '0':continue#获取当前数字的中文大写字符digit_char = digits[int(digit)]#获取当前数字的单位字符unit_char = units[i % 4]#如果当前数字为零且单位字符不为空,则在金额后添加单位字符if digit == '0' and unit_char != '':chinese_amount = digit_char + chinese_amount#如果当前数字不为零,则在金额后添加当前数字和单位字符elif digit != '0':chinese_amount = digit_char + unit_char + chinese_amount#如果当前数字不为零且单位字符不为空,则在金额后添加零if digit != '0' and unit_char != '':chinese_amount = digits[0] + chinese_amountreturn chinese_amount#将小数部分的金额转换为中文表示def convert_decimal_part_to_chinese(decimal_part):#获取小数部分的十位和个位数字ten_digit = decimal_part[0]one_digit = decimal_part[1]#初始化中文表示的小数部分金额字符串chinese_amount = ''#根据小数部分的十位和个位数字转换为中文表示if ten_digit != '0':chinese_amount += digits[int(ten_digit)] + '角'if one_digit != '0':chinese_amount += digits[int(one_digit)] + '分' return chinese_amount```请注意,该公式模板仅适用于转换人民币金额,不适用于其他货币单位。

金额分列及大写方法步骤

金额分列及大写方法步骤

说明:金额分列:C3单元格公式=IF($A3,LEFT(RIGHT(" "&ROUND($A3,2)*100,11-COLUMN(D:D)+1)),""),该公式可以横向或竖向下拉。

L3单元格公式=IF($A3,LEFT(RIGHT(" "&ROUND($A3,2)*100,11-COLUMN(C:C)+1)),""),该公式可以横向或竖向下拉。

金额大写:V3单元格公式=IF(OR(A3="",A3=0),"",IF(A3<0,"负","")&TEXT(TRUNC(ABS(ROUND(A3,2))),"[DBNum2]")&"元"&IF(ISERR(FIND(".",ROUND(A3,2))),"",TEXT(RIGHT(TRUNC(ROUND(A3,2)*10)),"[DBNum2]"))&IF(ISERR(FIND(".0",TEXT( A3,"0.00"))),"角","")&IF(LEFT(RIGHT(ROUND(A3,2),3))=".",TEXT(RIGHT(ROUND(A3,2)),"[DBNum2]")&"分","整")),该公式可以竖向下拉。

详解:第1步先绘制类似日记帐表格,如图1所示第2步在A2单元格中输入具有代表性的测试数据,如图2所示。

12345678.78第3步在B2单元格中输入公式"=MID(REPT(" ",COLUMNS($B:$L)-LEN($A2*100))&$A2*100,COLUMN(A:A),1)",如图3所示。

人民币大写函数公式

人民币大写函数公式

人民币大写函数公式
以下是人民币大写函数的公式:
1.将阿拉伯数字拆分为整数和小数部分。

2.对整数部分进行转换:
a.对整数部分从右到左每4位进行分组,得到若干个4位的组,不足
4位的组补0。

b.对每个4位的组进行进一步的转换,从右至左依次处理每位数字:
i.如果该位数字不为0,则输出对应的大写数字,并加上相应的单位,单位根据位数确定(个、十、百、千)。

ii. 如果该位数字为0,并且该组的其他位数字不全为0,则输出“零”。

iii. 如果该组的其他位数字全为0,则不输出任何字符。

c.对每个4位的组转换的结果进行拼接,最后输出整数部分的人民币
大写金额。

3.对小数部分进行转换:
a.将小数部分按位转换,先转换第一位小数,再转换第二位小数,并
添加单位“角”和“分”。

b.如果小数部分全为0,则不输出任何字符。

c.如果小数部分为0.0,则输出“整”。

4.将整数部分和小数部分的结果拼接起来,输出最终的人民币大写金额。

需要注意的是,上述公式是比较简化的人民币大写函数公式,实际应用中还需要考虑更多边界情况和特殊处理,例如金额为0的情况、金额为负数的情况等。

以上是人民币大写函数的基本公式,根据具体的编程语言和需求,可以进一步优化和细化实现。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档