Excel2003中如何把阿拉伯数字自动转换成大写金额

比如说1349.78自动转换成壹仟参佰肆拾玖元柒角捌分比如说240自动转换成贰佰肆拾元整比如说要转换的单元格还有其它汉字,例:“人民币合计:”又怎么办。必需要按支票的填写... 比如说1349.78自动转换成壹仟参佰肆拾玖元柒角捌分
比如说240自动转换成贰佰肆拾元整
比如说要转换的单元格还有其它汉字,例:“人民币合计:”又怎么办。
必需要按支票的填写方式,请回答的朋友详细说明下操作步骤。
展开
 我来答
匿名用户
推荐于2016-06-09
展开全部
Sub 财务大写()
Selection.NumberFormatLocal = "0.00"
For Each cell In Selection
cell.Offset(0, 1).Value = exchange(cell.Value)
Next cell
End Sub
Function exchange(money)
Dim yuan As Long
Dim jiao As Long
Dim fen As Long
yuan = Int(Round(100 * Abs(money)) / 100)
jiao = Round(100 * Abs(money) + 0.00001) - yuan * 100
fen = Round((jiao / 10 - Int(jiao / 10)) * 10)
If yuan < 1 Then
A = ""
Else
A = Application.Text(yuan, "[dbnum2]") & "元"
End If
If jiao > 9.4 Then
B = Application.Text(Int(jiao / 10), "[dbnum2]") & "角"
Else
If yuan < 1 Then
B = ""
Else
If fen > 0.4 Then
B = "零"
Else
B = ""
End If
End If
End If
If fen < 1 Then
C = "整"
Else
C = Application.Text(Round(fen, 0), "[dbnum2]") & "分"
End If
If Abs(money) < 0.005 Then
exchange = ""
Else
If money < 0 Then
exchange = "负" & A & B & C
Else
exchange = A & B & C
End If
End If

End Function
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zzpcz
2010-05-19
知道答主
回答量:1
采纳率:0%
帮助的人:0
展开全部
=IF((L2-INT(L2))=0,TEXT(L2,"[DBNUM2]")&"元整",IF(INT(L2*10)-L2*10=0,TEXT(INT(L2),"[DBNUM2]")&"元"&TEXT((INT(L2*10)-INT(L2)*10),"[DBNUM2]")&"角整",TEXT(INT(L2),"[DBNUM2]")&"元"&IF(INT(L2*10)-INT(L2)*10=0,"零",TEXT(INT(L2*10)-INT(L2)*10,"[DBNUM2]")&"角")&TEXT(RIGHT(L2,1),"[DBNUM2]")&"分"))
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式