人民币小写金额转换成大写格式方法

二把刀,2010年2月20日

要将人民币小写金额转换成大写格式,用Excel提供的格式,将自定义格式类型中的“[dbnum2]G/通用格式”改为“[dbnum2] G/通用格式“元””来实现。以下均对B1转换,假设B1是通过函数ROUND( )四舍五入取得二位小数的小写金额数

方法一、在三个连续的同行单元格中转换

1.B2中输入公式 “=IF(B1<0,"金额为负无效",INT(B1))”,然后点击“格式→单元格→数字→特殊→中文大写数字→确定”,再点击“格式→单元格→数字→自定义”,将“类型”编辑框中的“[dbnum2]G/通用格式”修改为:[dbnum2](“人民币”)G/通用格式“元”。
2.C2中输入“=IF(B1<0,"",INT(B1*10)-INT(B1)*10)”,同样C2改为:[DBNum2]G/通用格式“角”。
3.D2中输入“=IF(B1<0,"",INT(B1*100)-INT(B1*10)*10)”,同样D2改为:[DBNum2]G/通用格式“分”。


方法二、用Excel提供的函数转换

1.个位为0,则不显示;不为0,显示“XXX元”;不为0、且角位和分位均为0,显示“XXX元整”;元角分位均为0,则显示“零元整”。
2.小数点后面第一位为0、且元位或分位有一为0,则不显示;为0、且元位和分位均不为0,则显示“零”;不为0,显示“X角”。
3.小数点后面第二位为0,则显示“整”;不为0,显示“X分”。

根据以上思路在B2中输入公式:

=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)*(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(ISTEXT(B1),"","(人民币)"&TEXT(INT(B1),"[dbnum2]")&"元"&IF(INT(B1*10)-INT(B1)*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]")&"分"))

Tags: 人民币  小写  金额  大写  格式  方法  

分类: 经验技巧 | 评论:0 | 浏览:

相关文章:

发表评论