免费视频|新人指南|投诉删帖|广告合作|地信网APP下载

查看: 1991|回复: 4
收起左侧

[EXCEL] 巧妙转换 让Excel人民币小写变大写

[复制链接]

7658

主题

1160

铜板

2299

好友

技术员

为地信喝彩!

积分
106249
QQ
发表于 2011-1-6 16:44 | 显示全部楼层 |阅读模式
要将人民币小写金额转换成大写格式,用Excel提供的格式,将自定义格式类型中的“[dbnum2]G/通用格式”改为“[dbnum2] G/通用格式“元””来实现。  要将人民币小写金额转换成大写格式,用Excel提供的格式,将自定义格式类型中的“[dbnum2]G/通用格式”改为“[dbnum2] G/通用格式“元””来实现。但在转换小数时却出现了问题,比如¥6,050.09只能转换为“陆仟零伍拾.零玖圆”。那么用Excel能不能解决这一先天不足呢?告诉大家其方法有以下两种(以下均对B1转换,假设B1是通过函数ROUND( )四舍五入取得二位小数的小写金额数,其值为¥6,050.09)。
  一、在三个连续的同行单元格中转换
  1. B2中输入公式 “=IF(B1<0,"金额为负无效",INT(B1))”,计算结果为¥6,050.00,然后点击“格式→单元格→数字→特殊→中文大写数字→确定”,B2显示“陆仟零伍拾”,再点击“格式→单元格→数字→自定义”,将“类型”编辑框中的“[dbnum2]G/通用格式”修改为:[dbnum2](“人民币”)G/通用格式“元”,此时B2显示:“(人民币)陆仟零伍拾元”。
  2. C2中输入“=IF(B1<0,"",INT(B1??10)-INT(B1)??10)”,同样C2改为:[DBNum2]G/通用格式“角”,C2显示:“零角”。
  3. D2中输入“=IF(B1<0,"",INT(B1??100)-INT(B1??10)??10)”,同样D2改为:[DBNum2]G/通用格式“分”, D2显示:“玖分”。
  这样在连续的三个同行单元格中实现了大写金额格式的转换。为了使转换符合财务格式,B2应右对齐,C2列宽无间隔,且不设左右边框线,D2要左对齐。

  二、用Excel提供的函数转换
  个位为0,则不显示;不为0,显示“XXX元”;不为0、且角位和分位均为0,显示“XXX元整”;元角分位均为0,则显示“零元整”。
  小数点后面第一位为0、且元位或分位有一为0,则不显示;为0、且元位和分位均不为0,则显示“零”;不为0,显示“X角”。
  小数点后面第二位为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]")&&"分")))”。
  确认后B2显示:“(人民币)陆仟零伍拾元零玖分”。以后使用时将公式复制到有关单元格中,若转换的对象B1发生了变化,可点击“编辑→替换”将B1替换掉。
地质啷http://weibo.com/943569550

27

主题

1871

铜板

97

好友

高级工程师

Rank: 9Rank: 9Rank: 9

积分
719
发表于 2011-1-6 16:47 | 显示全部楼层
呵呵学习了。感谢提供
时光溜走了

0

主题

43

铜板

0

好友

实习生

Rank: 1

积分
6
发表于 2011-10-30 02:42 | 显示全部楼层
nemo01171 发表于 2011-1-6 16:47
呵呵学习了。感谢提供

直接两个单元格就可以了
在A1单元格输入要转换的数字
在A2单元格输入 ="(人民币)"&(IF(INT(A1)-A1=0, TEXT(INT(A1),"[DBNum2][$-804]G/通用格式")&"元整",TEXT(INT(A1),"[DBNum2][$-804]G/通用格式")&"元"))&(IF(INT(A1)-A1=0,"",IF(A1*10-INT(A1*10)=0,TEXT(INT(A1*10-INT(A1)*10),"[DBNum2][$-804]G/通用格式")&"角整",TEXT(INT(A1*10-INT(A1)*10),"[DBNum2][$-804]G/通用格式")&"角")))&(IF(INT(A1*10)-A1*10=0,"",TEXT(INT(A1*100-INT(A1*10)*10),"[DBNum2][$-804]G/通用格式")&"分"))

6

主题

1万

铜板

3

好友

高级工程师

Rank: 9Rank: 9Rank: 9

积分
920
QQ
发表于 2012-2-17 13:40 | 显示全部楼层
写的好复杂呀……
回复 支持 反对

使用道具 举报

2

主题

1万

铜板

7

好友

钻石会员

Rank: 26Rank: 26Rank: 26Rank: 26Rank: 26Rank: 26Rank: 26

积分
6419
发表于 2023-1-12 17:51 | 显示全部楼层
了解一下
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

在线客服
快速回复 返回顶部 返回列表