在Excel中制作人民币大写金额转换函数

合集下载

如何在EXCEL中实现数字金额转换成中文大写金额

如何在EXCEL中实现数字金额转换成中文大写金额

如何在EXCEL中实现数字⾦额转换成中⽂⼤写⾦额如何在EXCEL中实现数字⾦额转换成中⽂⼤写⾦额?⼯作中经常会遇到这样的转换,特别是做财务⼯作的朋友,如果⼿⼯录⼊,很费时间⼜常常担⼼出错。

笔者参考了⼀些⽂章,根据实践,觉得下⾯的⽅法很实⽤:⽅法名:“⽤Excel函数将货币数值由阿拉伯数字⾃动⽣成为中⽂⼤写格式”假设输⼊阿拉伯数字格式⾦额的是A7单元格,要⾃动⽣成中⽂⼤写⾦额的是A8单元格,我们按照中⽂⼤写格式的特殊的要求,利⽤Excel函数对A8进⾏公式设置。

在A8单元格输⼊:=IF((A7-INT(A7))=0,TEXT(A7,"[DBNUM2]")&"元整",IF(INT(A7*10)-A7*10=0,TEXT(INT(A7)," [DBNUM2]")&"元"&TEXT((INT(A7*10)-INT(A7)*10),"[DBNUM2]")&"⾓整",TEXT(INT(A7),"[DBNUM2]")&"元"&IF(INT(A7*10)-INT(A7)*10=0,"零",TEXT(INT(A7*10)-INT(A7)*10,"[DBNUM2]")&"⾓")&TEXT(RIGHT(A7,1),"[DBNUM2]")&"分"))。

公式中共运⽤4种函数,⽂本连接符号“&”及相应的汉字。

IF函数:是⼀个条件判断函数,此函数的基本格式是:IF(a,b,c)其中“a”是⼀个条件,“b”和“c”是两种判断结果,可以表述为:如果条件a成⽴,那么结果是b,否则结果就是c。

以上公式是有四层嵌套条件判断函数,根据货币⾦额的不同情况⽣成不同格式的中⽂⼤写。

怎样在EXCEL中数字转人民币大写

怎样在EXCEL中数字转人民币大写

怎样在EXCEL中数字转人民币大写1.第一种方法:通过函数嵌套实现数字转人民币大写形式的公式是:=IF(B1<0,"金额为负无效",(IF(OR(B1=0,B1=""),"(人民币)零元",IF(B1<1,"(人民币)",TEXT(INT(B1),"[dbnum2](人民币)G/通用格式")&"元"))))&IF((INT(B1*10)-INT(B1)*10)=0,IF(INT(B1*100)-INT(B1*10)*10=0,"","零"),(TEXT(INT(B1*10)-INT(B1)*10,"[dbnum2]")&"角"))&IF((INT(B1*100)-INT(B1*10)*10)=0,"整",TEXT((INT(B1*100)-INT(B1*10)*10),"[dbnum2]")&"分")数字转人民币大写形式的公式是:="大写金额:"&IF(TRIM(B1)="","",IF(B1=0,"","人民币"&IF(B1<0,"负",)&IF(INT(B1),TEXT(INT(ABS(B1)),"[dbnum2]")&"元",)&IF(INT(ABS(B1)*10)-INT(ABS(B1))*10,TEXT(INT(ABS(B1)*10)-INT(ABS(B 1))*10,"[dbnum2]")&"角",IF(INT(ABS(B1))=ABS(B1),,IF(ABS(B1)<0.1,,"零")))&IF(ROUND(ABS(B1)*100-INT(ABS(B1)*10)*10,),TEXT(ROUND(ABS(B1)*100 -INT(ABS(B1)*10)*10,),"[dbnum2]")&"分","整")))12508.34 大写金额:壹万贰仟伍佰零捌元叁角肆分数字转人民币大写形式的公式是:="大写金额:"&IF(TRIM(B1)="","",IF(B1=0,"",""&IF(B1<0,"负",)&IF(INT(B1),TEXT(INT(ABS(B1)),"[dbnum2]")&"元",)&IF(INT(ABS(B1)*10)-INT(ABS(B1))*10,TEXT(INT(ABS(B1)*10)-INT(ABS(B 1))*10,"[dbnum2]")&"角",IF(INT(ABS(B1))=ABS(B1),,IF(ABS(B1)<0.1,,"零")))&IF(ROUND(ABS(B1)*100-INT(ABS(B1)*10)*10,),TEXT(ROUND(ABS(B1)*100 -INT(ABS(B1)*10)*10,),"[dbnum2]")&"分","整")))这类转换的格式没有“人民币”字样1.第二种方法:通过宏VBA自定义函数实现第一步:按下ALT+F11组合键,或者是单击工具——宏——Visual Basic 编辑器,进入Visual Basic编程环境,单击“插入” 菜单——模块,复制下面代码,保存,退出关闭。

在Excel2007中用自定义函数解决人民币大写转换

在Excel2007中用自定义函数解决人民币大写转换

在Excel2007中用自定义函数解决人民币大写转换图1 采购清单图1是女友某次商品采购的清单,我们的目的就是自定义一个函数,并通过调用这个自定义函数,轻松实现人民币金额的大写转换。

第一步:在Excel2007中打开VB编辑器窗口启动Excel ,打开图1所示的工作簿,依次单击“开发工具→代码→ Visual Basic”命令,打开“Visual Basic编辑器”窗口。

第二步:定义转换函数右击“Visual Basic编辑器”窗口中的“ThisWorkbook”,选择“插入→模块”命令,插入一个新的模块(默认名称为“模块1”),接着将以下代码输入到右侧的代码编辑区域中。

Function rmbb(M)y = Int(Abs(M))j = Round(Abs(M) - y, 2)f = (j * 10 - Int(j * 10)) / 10a = Application.Text(y, "[DBNum2]")d = "元"If j < 0.1 Then e = "" Else e = "角"If f < 0.01 Then g = "整" Else g = "分"If f < 0.01 Then c = "" Else c = Application.Text(Round(f * 100, 0), "[DBNum2]") If j = 0 Then b = "" Else b = Application.Text(Int(j * 10), "[DBNum2]")If M < 0 Then z = "负" Else z = ""rmbb = z & a & d & b & e & c & gEnd Function函数输入完毕后,关闭“Visual Basic编辑器”并返回,我们输入的代码就被自动保存了。

excel数字转大写金额函数

excel数字转大写金额函数

excel数字转大写金额函数
Excel数字转大写金额函数
在实际工作中,我们经常会用到把数字表示的金额转换成大写汉字,在Excel中也可以实现这样的转换。

本文介绍利用Excel函数实现转换金额数字为大写汉字的方法。

1、定义函数
在Excel中,要实现将数字转换为大写汉字,可以使用函数:DOLLAR(货币文本)。

其中,具体使用规则如下:
DOLLAR(num,[position])
参数说明:
Num为必需参数,表示要转换的金额数字。

Position为可选参数,表示以几位小数点货币格式显示,默认为2位小数;
2、使用函数
例如,在Excel中,我们想将数字100000转换为大写汉字,通常应该如何操作呢?
首先,我们在Excel中输入数字100000,然后在它旁边的单元格输入函数DOLLAR,最后,在函数后输入参数100000,按回车即可。

此时,可以看出,Excel已经将100000转换为大写汉字“壹拾万元整”了。

- 1 -。

教你在EXCEL表格中自动生成大写金额的方法

教你在EXCEL表格中自动生成大写金额的方法

教你在EXCEL表格中⾃动⽣成⼤写⾦额的⽅法经常有朋友问我怎么在电⼦表格⾥输⼊数字的时候,能让他⾃动输出的是⼤写⾦额。

因为如果你慢慢的输⼊⼤写⾦额的话,显得⽐较慢,不⽅便操作。

今天我就把这个⽅法写在这上边,让你⼀招就学会。

=IF(C15<0,"零元整",IF(C15=0,"",IF(TRUNC(C15)=C7,TEXT(TRUNC(C15),"[DBNum2][$-804]G/通⽤格式")&"元整",TEXT(TRUNC(C15),"[DBNum2][$-804]G/通⽤格式")&"元"&IF(TRUNC((C15)*10)-TRUNC(C15)*10=0,"零"&TEXT(TRUNC((C15)*100)-TRUNC((C15)*10)*10,"[DBNum2][$-804]G/通⽤格式")&"分",TEXT(TRUNC((C15)*10)-TRUNC(C15)*10,"[DBNum2][$-804]G/通⽤格式")&"⾓"&IF(TRUNC((C15)*100)-TRUNC((C15)*10)*10=0,"整",TEXT(TRUNC((C15)*100)-TRUNC((C15)*10)*10,"[DBNum2][$-804]G/通⽤格式")&"分")))))把这些代码复制到你要输出⼤写⾦额的格内,然后把C15改成你所要输出的⼩写⾦额的代号。

在EXCEL中将数字转换为人民币大写的三种方式

在EXCEL中将数字转换为人民币大写的三种方式

在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数字变成大写金额的函数

excel数字变成大写金额的函数
在Excel中,将数字转换为大写金额的常用方法是使用自定义格式。

以下是将单元格中的数字转换为大写金额的步骤:
1. 选择要应用自定义格式的单元格或单元格区域。

2. 在“格式”菜单中,选择“自定义日期格式”。

3. 在“类型”输入框中,输入以下文本代码:0[ $]0.00;[ $]0[.00]$ ]。

4. 点击“OK”按钮。

现在,单元格中的数字将以大写金额的形式显示。

请注意,此自定义格式适用于货币值,如果要将非货币值(例如百分比)转换为大写金额,请相应地更改代码中的格式。

另外,如果您想要在单元格中自动将数字转换为大写金额,并在单元格下方显示总计,则可以使用以下公式:
=RIGHT(CELL("filename",A1),LEN(CELL("filename",A1))-
FIND(CHAR(10),CELL("filename",A1))) & "," &
SUBSTITUTE(RIGHT(CELL("filename",A1),LEN(CELL("filename",A 1))-
FIND(CHAR(10),CELL("filename",A1))),CHAR(10),",")&"="&TEXT($ A1,"")
该公式将在单元格下方显示数字,并将其转换为大写金额。

请将公式复制到其他单元格中,以获得总计。

电子表格中将人民币计算结果由小写转为大写的实用公式

电子表格中将人民币计算结果由小写转为大写的实用公式

电子表格中将人民币计算结果由小写转为大写的公式用电子表格制作相关财务报表时,往会使用到大写数字,有没有直接将人民币计算结果由小写转为大写数字的方法呢,本人通过实践,发现用这个公式可实现小写数字转为大写数字。

=SUBSTITUTE(SUBSTITUTE(TEXT(TRUNC(FIXED(C8)),"[>0][db num2];[<0]负[dbnum2];;")&TEXT(RIGHT(FIXED(C8),2),"元[dbnum2]0角0分;;"&IF(ABS(C8)>1%,"元整",)),"零角",IF(ABS(C8)<1,,"零")),"零分","")该公式的使用方法:C8单元格为输入阿拉伯数字的单元格,在需要大写的单元格复制公式进去,回车后就会变成大写,试试吧!很好用的!根据需要按你的意愿更改相应的单元格就能得到你想要的结果了。

注意公式中红色的部分为可改的部分另外还有一个公式是:(其中的a2为输入人民币小写的单元格)=IF(ABS(A2)<0.005,"",IF(A2<0,"负",)&IF(INT(ABS(A2)),TEXT(INT(ABS(A2)),"[dbnum2]")&"元",)&IF(INT(ABS(A2)*10)-INT(ABS(A2))*10,TEXT(INT(ABS(A2)*10) -INT(ABS(A2))*10,"[dbnum2]")&"角",IF(INT(ABS(A2))=ABS(A2),,IF(ABS(A2)<0.1,,"零")))&IF(ROUND(ABS(A2)*100-INT(ABS(A2)*10)*10,),TEXT(ROUN D(ABS(A2)*100-INT(ABS(A2)*10)*10,),"[dbnum2]")&"分","整"))。

Excel转换人民币大小写的方法

Excel转换人民币大小写的方法

Excel转换人民币大小写的方法
大家知道Excel转换人民币大小写吗?下面我们就给大家详细介绍一下吧!我们积累了一些经验,在此拿出来与大家分享下,请大家互相指正。

 一、在三个连续的同行单元格中转换
 1. B2中输入公式=IF(B12. C2中输入=IF(B13. D2中输入=IF(B1这样在连续的三个同行单元格中实现了大写金额格式的转换。

为了使转换符合财务格式,B2应右对齐,C2列宽无间隔,且不设左右边框线,D2要左对齐。

 二、用Excel提供的函数转换
 个位为0,则不显示;不为0,显示XXX元&rdquo;;不为0、且角位和分位均为0,显示XXX元整&rdquo;;元角分位均为0,则显示零元整&rdquo;。

 小数点后面第一位为0、且元位或分位有一为0,则不显示;为0、且元位和分位均不为0,则显示零&rdquo;;不为0,显示X角&rdquo;。

 小数点后面第二位为0,则显示整&rdquo;;不为0,显示X分&rdquo;。

 根据以上思路在B2中输入公式:
 IF(B1IF(B1IF(INT(B1)??(INT(B1??100)-INT(B1??10)??10)=0,”“,” 零”),。

在EXCEL中将数字转换为人民币大写的三种方式

在EXCEL中将数字转换为人民币大写的三种方式

在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人民币大写函数公式

excel人民币大写函数公式
Excel提供了一种方便的方式来将人民币金额转换为大写格式。

这种功能可以通过使用一个特殊的函数来实现,称为“人民币大写函数公式”。

这个函数可以将任何金额转换为中文数字格式,并将其显示在单元格中,使其更易于阅读和理解。

要使用这个函数,首先需要在工作表中选择一个空单元格。

然后,在该单元格中输入以下公式:=人民币大写(金额)。

在这个公式中,“金额”是要转换的数字,可以是任何数字,包括小数。

例如,要将1500元转换为大写,可以输入以下公式:=人民币大写(1500)。

当你按下“Enter”键时,Excel将自动将该数字转换为中文数字格式,并将其显示在单元格中。

例如,输入1500元,Excel将显示“壹仟伍佰元整”。

人民币大写函数公式可以在任何工作表中使用,无论是在个人财务管理工作表中,还是在商业会计工作表中。

这个功能可以帮助用户更好地理解他们的财务数据,并更好地规划他们的财务未来。

- 1 -。

excel中人民币金额大写的函数

excel中人民币金额大写的函数

excel中人民币金额大写的函数在Excel 中,如果你想将人民币金额转换为大写形式,你可以使用以下步骤:1. 下载并安装VBA 代码模块:-打开Excel 文件。

-按下`Alt` + `F11` 打开Visual Basic for Applications (VBA) 编辑器。

-在菜单中选择"插入" -> "模块",这将创建一个新的代码模块。

2. 复制并粘贴VBA 代码:-将以下VBA 代码复制并粘贴到新建的代码模块中:```vbaFunction RMBFormat(ByVal MyNumber)Dim Units As StringDim DecimalPlace As StringDim TempStr As StringDim DecimalSeparator As StringDim UnitName As StringDim Count As IntegerDim DecimalSeparatorLength As IntegerReDim Place(9) As StringPlace(2) = " Thousand "Place(3) = " Million "Place(4) = " Billion "Place(5) = " Trillion "' String representation of amount.MyNumber = Trim(CStr(MyNumber))' Position of decimal place 0 if none.DecimalPlace = InStr(MyNumber, ".")' Convert cents and set MyNumber to dollar amount.If DecimalPlace > 0 ThenTempStr = GetTens(Left(Mid(MyNumber, DecimalPlace + 1) & "00", 2))MyNumber = Trim(Left(MyNumber, DecimalPlace - 1))End IfCount = 1Do While MyNumber <> ""TempStr = GetHundreds(Right(MyNumber, 3))If TempStr <> "" Then Units = Place(Count) & TempStr & UnitsIf Len(MyNumber) > 3 ThenMyNumber = Left(MyNumber, Len(MyNumber) - 3)ElseMyNumber = ""End IfCount = Count + 1LoopRMBFormat = Units & GetTens(TempStr)End FunctionPrivate Function GetTens(TensText)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 FunctionPrivate Function 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 FunctionPrivate Function GetHundreds(MyNumber)Dim Result As StringIf Val(MyNumber) = 0 Then Exit FunctionMyNumber = Right("000" & MyNumber, 3)' Convert the hundreds place.If Mid(MyNumber, 1, 1) <> "0" ThenResult = GetDigit(Mid(MyNumber, 1, 1)) & " Hundred "End If' Convert the tens and ones place.Result = Result & GetTens(Mid(MyNumber, 2))GetHundreds = ResultEnd Function```3. 使用自定义函数:-保存并关闭VBA 编辑器。

在EXCEL中怎么将小写人民币转化成大写

在EXCEL中怎么将小写人民币转化成大写

在EXCEL中怎么将小写人民币转化成大写100分标签:大写小写a2a1公式回答:4 浏览:5977 提问时间:2006-12-07 17:35比如我在A1输入12478.24,要在A2同步显示:壹万贰仟肆佰柒拾别元贰角肆分整,要怎么编公式,请各位大侠帮助,最佳答案此答案由提问者自己选择,并不代表爱问知识人的观点做我的工作经常需要实现这个功能,以往需要手工转换,过去也找过一些小程序进行转换,不过在小程序中显示好好的字符拷进excel中竟成了乱码,郁闷,现在有了这个公式,不用自己设置函数,直接拷贝+替换就完成。

很棒!在EXCEL中,假设A1为数字格式单元格,在任意单元格内粘贴下面公式即可显示大定金额:=IF(A1<=0,,TEXT(INT(A1),"[dbnum2]人民币G/通用格式")&"元"&IF(INT(A1*10)-INT(A1)*10=0,IF(INT(A1) *(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]")&"分"))回答:2006-12-07 19:27提问者对答案的评价:小渔[新手]爱做梦的人,你好:先在A2输入=A1然后用鼠标右键单击A2,在设置单元格格式的"数字"——"分类"中选择"特殊"——""中文大写数字",就OK了.回答:2006-12-07 18:07评论wangli1081[学妹]excel下将小写数字转为人民币大写的自定义函数-在Excel中将小写金额转换成人民币的大写金额的自定义函数及用法1、如何自定义:打开EXCEL,新建一个文件Book1,按ALT+F11进入VBA编程环境,选中这个BOOK1文件,插入模块,将下面的源代码复制到右边的模块代码区内,然后将此BOOK1保存,保存类型一定选加载宏,文件名嘛可自由发挥,我就填"中文大写",确定OK!然后回到EXCEL,工具--加载宏-找到"中文大写",打勾确定,我们这个自定义函数就可以象内置函数样使用了!--->=rmbdx(123456.78),爽吧!2、例子:A、直接在函数内输入数值的(请注意参数的用法,默认用法是不用输入)=rmbdx(123456.78)---> 壹拾贰万叁仟肆佰伍拾陆元柒角捌分=rmbdx(123456.78,0)---> 壹拾贰万叁仟肆佰伍拾陆元柒角捌分=rmbdx(123456.78,1)---> 壹拾贰万叁仟肆佰伍拾陆元柒角捌分=rmbdx(56.78)---> 伍拾陆元柒角捌分=rmbdx(0.78)---> 柒角捌分=rmbdx(0.784)---> 柒角捌分=rmbdx(0.785,1)---> 柒角玖分=rmbdx(0.02,1)---> 贰分B、引用某单元格数值进行转换的假设你的D3单元格的数据(也可以是求和或其它公式得出的结果)需要转换,大写格式放在D4单元格,则D4输入公式:=rmbdx(d3)即可C、其它形如=rmbdx(SUM(C4:C6))的也可以,用法象内置函数,请灵活使用3、源代码:Function rmbdx(value, Optional m = 0)'中文大写源代码,By 对面男孩、redwin'支持负数,支持小数点后的第三位数是否进行四舍五入处理'默认参数为0,即不将小数点后的第三位数进行四舍五入处理'2002-10-11--2002-10-13On Error Resume NextDim aDim jf As String '定义角分位Dim j '定义角位Dim f '定义分位If value < 0 Then '处理正负数的情况a = "负"Elsea = ""End IfIf IsNumeric(value) = False Then '判断待转换的value是否为数值rmbdx = "需转换的内容非数值"Elsevalue = Abs(CCur(value))'当参数m不输入(默认为0)或为0时,小数点后的第三数不进行四舍五入处理'当参数m为1或其它数值时,小数点后的第三数进行四舍五入处理If m = 0 Thenjf = Fix((value - Fix(value)) * 100)value = Fix(value) + jf / 100Else '厘位进行四舍五入实践很少用到,但还是要照顾到value = Application.WorksheetFunction.Round(value,2) '-->这句是关键!只用round有bugjf = Round((value - Fix(value)) * 100, 0)End IfIf value = 0 Or value = "" Then '当待转换数值为0或空时,不进行转换rmbdx = ""Elsestrrmbdx = Application.WorksheetFunction.Text(Int(value), "[DBNum2]") & "元" '转换整数位If Int(value) = 0 Thenstrrmbdx = ""End IfIf Int(value) <> value ThenIf jf > 9 Then '判断小数位j = Left(jf, 1)f = Right(jf, 1)Elsej = 0f = jfEnd IfIf j <> 0 And f <> 0 Then '角分位都有时jf = Application.WorksheetFunction.Text(j, "[DBNum2]") & "角" _& Application.WorksheetFunction.Text(f, "[DBNum2]")& "分"Else'处理出现零几分的情况If Int(value) = 0 And j = 0 And f <> 0 Thenjf = Application.WorksheetFunction.Text(f, "[DBNum2]") & "分"ElseIf j = 0 Then '有分无角时jf = "零" & Application.WorksheetFunction.Text(f, "[DBNum2]") & "分"ElseIf f = 0 Then '有角无分时jf = Application.WorksheetFunction.Text (j, "[DBNum2]") & "角整"End IfEnd IfEnd IfEnd Ifstrrmbdx = strrmbdx & jf '组装Elsestrrmbdx = strrmbdx & "整"End Ifrmbdx = a & strrmbdx '最后成型了End IfEnd IfEnd Function。

excel金额大小写转换函数

excel金额大小写转换函数

excel金额大小写转换函数
Excel中有一个非常有用的函数,可以将数字金额转换为中文大写金额,这个函数就是“大写金额”函数。

该函数可以让你在Excel 中快速地将数字金额转换为大写的中文金额,并可以自动将结果显示在相应的单元格中。

使用该函数非常简单,只需要在需要转换的单元格中输入函数,然后按下回车键即可。

大写金额函数的基本语法如下:
=大写金额(数字)
其中“数字”参数是需要转换的金额,可以是一个单元格引用或直接输入的数值。

例如,如果要将1000元转换为大写金额,可以在单元格中输入以下公式:
=大写金额(1000)
Excel会自动计算并显示结果“壹仟元整”。

此外,大写金额函数还支持自定义数字和货币单位的方式,可以根据需要进行相应的设置。

例如,可以使用以下公式将数字和货币单位分别设置为单元格A1和B1中的值:
=大写金额(A1,B1)
这样就可以根据需要将转换结果显示为“一千美元整”或“壹仟元整”等。

总之,大写金额函数是Excel中非常实用的一个功能,可以帮助你快速、准确地将数字金额转换为中文大写金额,提高工作效率。

- 1 -。

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

在Excel中制作人民币大写金额转换函数
我在用Excel进行财务统计时,将数值转换成人民币中文大写金额一般是采用将单元格格式自定义为“[dbnum2]&元”这种方法。

但是在输入带有小数的数值时却出现了问题,比如在输入123.4的时候,变为“壹佰贰拾叁.肆元”,这样子是不符合财务格式的,应该是“壹佰贰拾叁元肆角”才对。

那么能不能在Excel中实现将任意数值转为人民币大写金额呢?
一、解决问题的思路
在Excel中自定义一个函数,该函数可以将任意数值转换为人民币大写金额。

编制该函数代码时我是这样考虑:将输入的数值分为整数、十分位、百分位三个部分,将这几个部分单独转换为[dbnum2] 格式,再根据出现的各种可能和字符“元”、“角”、“分”进行组合。

二、自定义Excel函数
进入Visual Basic 开发环境,选择“插入→模块”,在出现的代码窗口输入如下代码:
Function d(q)
ybb = Round(q * 100)
'将输入的数值扩大100倍,进行四舍五入
y = Int(ybb / 100)
'截取出整数部分
j = Int(ybb / 10) - y * 10
'截取出十分位
f = ybb - y * 100 - j * 10
'截取出百分位
zy = Application.WorksheetFunction.Text(y, "[dbnum2]")
'将整数部分转为中文大写
zj = Application.WorksheetFunction.Text(j, "[dbnum2]")
'将十分位转为中文大写
zf = Application.WorksheetFunction.Text(f, "[dbnum2]")
'将百分位转为中文大写
d = zy & "元"
If f <> 0 And j <> 0 Then
d = d & zj & "角" & zf & "分"
If y = 0 Then
d = zj & "角" & zf & "分"
End If
End If
If f = 0 And j <> 0 Then
d = d & zj & "角"
If y = 0 Then
d = zj & "角"
End If
End If
If f <> 0 And j = 0 Then
d = d & zj & zf & "分"
If y = 0 Then
d = zf & "分"
End If
End If
If q = "" Then
d = 0
'如没有输入任何数值为0
End If
End Function
三、函数的使用
例如要将123.45元转换为人民币大写金额,只需在单元格中输入“=d(123.45)”,再按回车,即转换为“壹佰贰拾叁元肆角伍分”。

为了确保该函数能随时调用,我们需要将上述代码另存为名为“D”,文件类型为“Microsoft Excel 加载宏”的文件,以后在使用时只需点击“工具→加载宏→D→确定”则可。

如果想在另外的电脑上使用该函数,可以将加载宏文件“D”复制到它们的Windows/Application Data/Microsoft/AddIns下,在使用时同样是点击“工具→加载宏→D→确定”。

相关文档
最新文档