关键词不能为空

当前您在: 主页 > 高中公式大全 >

酶活力计算公式EXCEL中小写转大写

作者:高考题库网
来源:https://www.bjmy2z.cn/gaokao
2020-09-25 18:03
tags:excel大写公式

北方工业大学分数线-如何做市场营销

2020年9月25日发(作者:窦次山)

EXCEL中小写转大写
公式一:
SUBSTITUTE(SUBST ITUTE(IF(A1<0,负


um2]角

分整零元零零元公式二:
CONCATENATE(IF(A1<0,负



I F(RIGHT(TRUNC(A1*10),1)=角

(RIGHT(TRUNC(A1*1 00),1)=分
公式三:
IF(ROUND(A1,2)=0,
m2]元整



2]角


我用不同的数值对这三个公式进行了 一番测试,都达到了我的要求,至少到目前为止还
没有发现上述公式存在着什么错误。上述公式对负数的 处理采取了不同的方法。公式一和公
式二对负数是在其前部加上一个“负”字,而公式三则是按正数进行 处理。我比较推崇公式三
的方式,不是还有条件格式可以设置吗?若是负数就用条件格式来变为红色。
我不准备在此对上述公式进行分析解说。撰写本文的目的是我也想自己来“组装”一个所
谓 的通用公式。我只所以说是“组装”而不是叫什么“开发”或者是“拼凑”,是因为EXCEL的
函数现 成地摆在了那里,使用时就是为了达到某种目的,按照其固有的规则,将其进行有机
的组合,可谓“组装 ”。但是在这个过程中,也是要开动脑筋的,并非是随随便便“拼凑”就能
成功的。本文的目的就是想将 我在“组装”公式时的思路展现出来。
若用程序设计语言(比如用C语言)来写一个人民币数字金 额转大写金额会怎样考虑
呢?我想每一位数字都要考虑到。但在EXCEL中,单元格格式中有一个“特 殊”格式,里面
就有将小写数字转换为大写数字的格式。但要注意的是,这里转换的是数字而不是金额。 所
以转换出来后并不存在“元”、“角”、“分”、“整”等在大写金额中出现的字。但是,“元”只出
现在整数部分的后面,而小数部分只有角分两位。这样只要利用EXCEL的“特殊”格式将数
据分为整数部分、角位和分位三个部分来处理就行了。处理的顺序是先整数,再角位、再分
位。
由于要分三个部分分别处理,然后根据情况分别与“元”,“角”,“分”及“整”相连接。连接的方式可以使用CONCATENATE()函数,如公式二,也可以使用连接符&。而用&来连
接,公式结构似乎会相对简单清晰一些,所以我选择了用&来连接。

虽然对问题进行了分解,但需要考虑的细节相当多。
若单元格为0或者空,输出空,避免出现“零 ”、“零元”等字样。对非数字字符不进行处
理,使用EXCEL自身的错误提示。
对负数按正数处理,再用条件格式将其转换为红色,不拟采用“负XXXXXX”的形式。
整数加 “元”,若是纯整数,就只处理整数且加“整”,不再处理小数部分。若是纯小数,
放在小数部分处理, 不单独列出处理。角为0且分不为0,应输出“零”,只有角的就加“整”
如果有尾数,即有3位 以上小数(这种情况也许很少发生,但作为一个“通用”公式,却
不能不考虑这种情况)。则有两种处理 方式,一是截尾,另一则是四舍五入。由于两种方式
的排它性。决定做两个公式。
如果数 值小于分,截尾公式输出空,而四舍五入公式则要考虑舍入问题。若有舍入输出
分,没有则输出空。
根据这个思路,我“组装”了下面两个公式。
公式四:
IF(A1=0,元< br>整

HT(TEXT(A1,角整

公式五:
IF(A1=0,元


10))*1=0,角整

公式 四是四舍五入公式,公式五则是截尾公式。两个公式的结构其实是一样的,只是使
用了不同的函数。下面 用公式四来说明。
TEXT(INT(ROUND(ABS(A1),2)),元用来处理整数部 分,考虑到纯小数
及舍入问题,增加一个判断ABS(A1)<0.995,用0.995,即保证了正 常的舍入,又避免了出
现0.9945也进行舍入的错误。
用RIGHTB(TEXT( A1,来判断是不是纯整数,是就输出“整”,后面就不用
处理了。因为TEXT函数输出的是文本值, 所以在这里有两种处理方法,一是就是本式,
二是RIGHTB(TEXT(A1,。
L EFT(RIGHT(TEXT(A1,是取出角位数,增加一个判断ABS(A1)<0.095是为了
在只有分票的情况下角位避免出现“零”的字样,0.095也是考虑了尾数的舍入问题。
IF (LEFT(RIGHT(TEXT(A1,角,角位是0输出空,否则输出“角”。同
样,这里的判断 表达式也可改为LEFT(RIGHT(TEXT(A1,

用RIGHT(TEXT(A1,取出分位数,分位为零输出“整”,否则输出分位数。
对于负数 ,如果一定要用“负XXXXXX”的形式,则直接在第二个判断前加上“IF(A1<0,
负。
还有网友提出来说万位为零时不输出零不符合规范,为此我专门去查了一下相关规定。
结果如下:
大写金额中间有“0”时,大写金额要写“零”字;小写金额中间连续有几个“0”时,大写金额中间可以只写一个“零”字;小写金额万位或元位是“ 0”,或者数字中间连续有几个“0”,万

位、元位也是“0”,但千位、角位不是“0”时 ,大写金额中可以只写一个“零”字,也可以不写
“零”字。
所以上述公式在当万位为零 而千位不为零时,以不输出零的方式处理,应该是符合规范
的。也许正是EXCEL采取这种样式的原因 。当然,如果遵照习惯非要加上这个零字也不是
不可能。只不过要增加一点公式复杂度罢了。
在一个数中,万会出现几次?不管是万、十万、百万、千万,这个万就出现一次,如果
是万万则是亿,如 果是万亿又是兆,万兆呢?已经超出EXCEL的处理能力了。所以答案是
万字在大写金额中只可能出现 一次,且只出现在整数部分。即然是这样,用SUBSTITUTE()
函数就能解决问题。即判断当万 位为零而千位不为零时,用“万零”来替换“万”,其它情况下
不进行替换。因为EXCEL只有在这种 情况下不会输出“零”。
在四舍五入公式中,因为还要考虑尾数舍入问题,判断使用了四舍五入函 数ROUND(),
公式四的输出整数的部分公式改为:
IF(AND(RIGHT(INT (ROUND(ABS(A1),2)10000))=
0))<>万万零

而截断 公式不用考虑尾数舍入问题,直接用TRUNC()取万位和千位数来判断。相应地
公式五的整数部分亦 改为:
IF(AND(RIGHT(TRUNC(ABS(A1)10000))=
STIT UTE(TEXT(TRUNC(ABS(A1)),万万零

为了一个我认为不是很必要的 “零”字使公式臃肿了许多,而我喜欢简单清晰的公式,所
以不愿在正式公式中采用。


worth的用法-加盟费用


厦门大学住宿-白银盘里一青螺


分手挽留的最感动的话-成功人的经历


早点吃什么好-中国央企名单


上海理工大学排名-2015浙江高考分数线


学习护理专业-多少英语


浙江大学城市学院几本-clock是什么意思中文


甘肃师范大学-石靖



本文更新与2020-09-25 18:03,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/408760.html

EXCEL中小写转大写的相关文章