EXCEL换为人民币大写 - 范文中心

EXCEL换为人民币大写

11/19

近来转了几个EX转EL相关论C坛,发现有分网部友寻在数求金额转换为字民币人写大的法。方于好出,奇在网我上索搜了一,什番么BV、A载宏加,式公函各式方法争数相相,亮有尽应有。但我的惯习,是只要能公用式决解问题的,坚不使决V用A。B以所就我特地别关注用使公来式生成的法,结果方用公式是的方可谓是更法加地灿烂缤,使纷眼花人缭乱。

  过分通我收析到的集十几个公二,式现发比牛较,合我适口的味式有三个公在,此我将其列。出

式一:

公S

USBITUTE(SUTBSITUTE(TI(F1<0,A&qout;&q负ot;,&uquot&;uoqt)&;apmTE;T(TXUNC(ABRS(ORUN(DA,1)))2,&quo;t[DNBu2]mqu&ot)&;qu&t;o元&uot;qam&pI;(ISFRERF(ND(&Iuoq;.t&uoq;,tOUNR(AD12,)),)&qou;t&qut;,TEoXT(IGHT(TRRUC(ROUNDNA1(,2*10)),&q)ut;oDBNum2]&[uoq;t))a&mpI;FI(SERRF(NDI&qu(ot;0.&quo;tT,EX(AT,&1uot;q0.0&0quto;))),&uot;角&quqot;,&uot;q&qout)&;amp;FI(ELTF(RGHT(IORND(AU1,2,)3))&=quto;&.uoqt,T;EX(TIGRHT(RUNDO(A1,)),&quo2;tD[NBu2m]q&out;&)ap;&muqot;&q分uto,IF;(ORUND(1A2,=0,&q)uto;q&otu;&q,out;&整qou;)t),q&uot;零零"元,&quot&q;ot;u,)qu&t;o零元quot&;,quot&&;qut;)o

公二:式

OCCNTANETA(IE(A1&lF;0,&quto;t&q负otu,&;uotq&;qotu;,T)XT(EFIT(UNR(C1A)0,&=quot&;quto;TRUNC(ABS(,A))1)&,uotq;[DBuNm]2&uqt;o,)FIIN(T(TUNR(C1A)=0,)&uoq;&tqou;,t&qot;u元qu&to;),ETXT(IFOR((BAS(1)&lA;t.0,TRU1NC(1)AA1=,&q)uot&;uqto,RI;HTGTR(NC(UA*110,)1))&q,uto;D[Bum2]Nq&uto;,)IFRIG(T(THRUN(AC*10),11=)&quto;&0uot;,&qquto;&qout,&qu;t;角o&uqot;),TXETI(F(RIHGTT(UNCRA1(100*),)=1q&uot0;q&uo;t&q,ut;o&uoq;tRIG,THT(RNUCA(*110)0,1)),quo&;[DtNuB2m&q]ou;t,I)(FRIGTH(RTUN(A1*C100,1))=&uqot0&q;otu;,q&uot;quo&t,;qu&to分;&quto;)

)

公式三

I(FRUOND(A,1)=0,&quot2&qu;t;,IFoR(UON(ABSDA(1,)2)&tg;=,TEXT1INT(R(UON(ABD(SA1,)))2&,uotq;DBN[um2&]qot;)ua&m;&qupo;t&元qou;,t&uot;&qqot;)ua&m;Ip(FIGHTRT(EX(TA1,quot&.00;qu&o;)t2,)1=*0,&qot;整&uuoqt;,FI(IGHTRTE(TX(A,1&uqt;.00&oqotu),;)*14&t;=1gIF(,IGRTH(TEX(T1A&,quto;.0&0uqo;)t2)*,1&t;g,&q9ou;tqu&t;o,&qou;零&tqut;)oIF(,ORNDUABS((1A,2))&gt=1,;&qot;零u&qotu,&qu;o;tq&ou;)t&)ma;pIF(IGRHT(ETX(TA,&q1uto.00&;uot;q),)*21&g;9,tEXTTL(EF(TIGHTRTE(T(X1A&,uqto.;0&0uqto),;2)),&uqo;[DBtNm2u]quot;&&a)pm;&uoqt;角&quot,;&qut;oqu&o;)&tmapI;F(IRGT(HTXE(TA,&q1uto;.00quo&t;))1>*,T0XTERI(HT(GTEX(A1,Tquo&;t.00&uoqt)),;qu&t;[DBouNm]2&qou;)&tam;p&qou;分&qtotu;,&uqto整;qu&to;))

)

  

用不我同的值数这三对个公式进了行一番测试都,达了到我要求的至少到,目为止还前没发有上现公述存在着式什错误。上述么公式负对的处数理采了不同取的法方公式一和公式。对二负是在数其部前加一个上负”“,而公式三字是则正按数行进理处我比。推崇公式三较的方,式不还是有件条式格可以设置?吗是负若就用数条件式来格变为红。

 

 不准我备在对此上述公式行分进解析说撰。

写本文的目的是我想自也来己组“装”一所谓个的通用公式我。所以只说是组“装而”不叫是么“什开发”者或“是拼凑,是因为”XEEL的函数C成现摆地在那里,了用使时就是为达到某了种目,的按照其固的规则有将,进行有其机的组,可谓合组“”。但装在是个这程过中也,要开是动筋的,脑并非随随便是便拼“凑就能”功成。本的文目的就的是想我在将“装组公式”时的思路展出来现。

 

 用若序程计设言语比如(用C言语)来一个人民写币字金额转数大金额会写怎样虑呢考我?每想位一数都字要考虑。到在但EXCL中E单元,格式中有

一个“特殊”格式格,里就面将有写数字转换小为写数大的格字。但式要注的意是这,里转的换数字是不是而金额所以。换出来后并不存转“在”、元“”、角分“、”“”整在大写等额中出金现字的。是,但元”“出现只在数整分的部后面而,小数部分有角只分两。位这只要利样EXC用E的L特殊”格“式将据数分整为数部、分角和位位分三个分来处理部行了就。处理的顺序是整数,再先位角再分位、。

 由 于要分个部分分别处三理然,根后情据况别与分元“”“,角,“分”及”“整相连”接。连的接式可以方用C使NCATONAEE(T函)数,如式二公,也以可用使接连&。而符用&连来接公,式结似乎会相对简构清晰一些,单以所选择了我用&来接连。

  虽

然问对题进行分了,但解需考要的细节虑相当。

  若单元格0为或者,空输空出,免出现“零”、“零元避”字样。等非数对字符字进不处行,理用E使CEXL自身的错误示提。

 对负数按正 数处理再,用件格式将条其转为换红色,不采拟用负“XXXXX”X的形。

  式整加数元“”若,纯是数,就整只处理数整加“且”整,再不理处数小部。分若纯小数是,放小数在部分理处不单,列独出处理角。为0且分不0,为应输出零”,只有角的就“加整“”

 如 果尾数,有即3位以有上小(这数种况也情很许发少生,作但为个一通“用”式,却不公能考不这种虑情况。)则两有种理处方,一是式截尾另,则是一四舍入。由于两种五式的排它性方决。定做两个式。

 如 果值小数分,截于尾式输出空,公四而五入舍式则公考虑舍入要题。问有若舍输入出,没分则有输空出。

 根 据个思路这我,组“装”下面了个公两式

公式

:F(IA10,=qu&o;&qtotu;,FIAB(S(1)Al&t;.990,5&uqo;t&uoqt,TE;T(XNTIROUND(AB((SA1,)2),)&qot;uDBNu[m2]qu&ot)&;amp";&元uoq;t)&mpaIF;(RGHI(TTEX(TA,1&quo;.0t0q&otu;),2*)1=0IF(ABS,(1)&ltA0.0;0,5&uqot&;uqo;,tquot;整&&uotq);,EXT(IFT

(ASBA(1&)t;0l0.5,9&uotq&qu;t;,LoEFTR(GIH(TTXETA1(&q,ou;t00.q&out;,))2)),&quo;[tdnubm]")&a2mpI;(FLFE(RIGHT(TEXT(A1T,&quo;.t00&uqto),;2)*)1=0,&uotq;&qout;&q,uto;&角uotq)&;mapIF;R(IHG(TEXT(T1A,quot;&0.0&quo;))*t=1,&0qot;整",uEXT(RIGTT(THETXA1,&(uqo;t0.&0quo;)t)&,uqot[;bnum2]&dquto);&apm&;uotq;分q&ou;)t))

公五式

:FIA1=(,&0qotu;&qou;t,I(ABSFA1)(&tl;,1&qotu;quo&t,TE;XTTR(NC(ABU(A1S))&quo,;[DBtNm2u&]qou;)ta&pm;q&uto;元q&ot;)&uam;pF(IRGHI(TTUNCR(A1*01),2)0*=0,IF1A(BSA1)&lt(0.01;&,qout;&quot,;&qut;整&qoou;t),FI(AS(B1A&)lt;.0,&1uqto;&uqt;,oEXTTR(GIH(TTUNR(C1A1*)0),qu&to;[dnumb2]qu&to);)&IFR(GHI(TRTNU(A1*1C0))1*=,0&quto&quo;;t,q&ou;角&qtout;&)ap;IFm(RGHTI(RTUN(CA*110)0)*10,&qu=o;整&qtut;,oETX(RITGTH(RUNC(TA1*01)),0quot&;[dbumn2&q]uo;t)&map&q;ut;o&quo分t;))

)

 

公 式四是四五入公式舍,公式五则截尾是式公。个两公的式结其实是一样构的,是只用了不使的函同数下面。用公式四说明来。

  

EXT(TIT(NOUND(ABR(AS1,2)),)&uot;[qBNDu2]mq&uto)&;apm;q&uto元&;qout;来处理整用部分,考数虑纯小到数舍入及题,增加问一个断ABS判(1)Al&;t.905,9用.905,9保即了

证正的舍常,又入免避了现出09.94也5行进入的舍误错。

  

R用IGHTBTEXT((1,&Auqt;o0.0&quo;),2t)*10来=判断不是是整纯,是数输就出“整,后面”不用就理处了因为T。ET函数输X出是的本文,值以所这在有两里种处方法理一是就,是本,式是二RIHTGB(ETX(TA,&1qut;o00.",2))&q=ot;00&uuot;。

q  LEF(RIGTTHT(ET(AX,1q&ut;o00&.uotq),2);是)取角出位,数增一个判断加BSA(A1<).0950为了在是有只分票的况情下位角避免现“零出的”样,字00.5也9是考虑了尾数舍的入题。

  I

FLE(F(TIRHG(TEXT(AT1,quo&;t0.&qu0t;),2))o*1=0&quo,t;&quo;t&,uotq角&;quto);,角位是输0出,空否输则出“角”同样。这里,的判表达断也可式为L改FE(RTGIH(TEXT(A1,T&qot;u.00&quo;t)2,)=&q)uot;0

&

quot;

 用 IGHR(TETT(XA,&1uot;.q0&0uot;q))出取位分数,分为位输出零“”,整否则输分出数。位

  

对负于,数果如一要定用负X“XXXXX”的式,则直接形在二个第断前加上“I判F(1A&l;t,0qu&to;负&uqt;o,q&otu&qu;t;o)a&pm”。;

 

还 有网提友出说来位万零时不为输零出符不规合范为此我,门专去查一了下关相定。规果如结:下

  

写金大中额间有“0时,”大金额写要写“零”;小写字额金间连中有续个几“0时,大”写金中额间可只以一个“零写字;小写金”额万位元或是位 “”0,者或字数间中续有连个“0”几,万位、位元是“也”,0但位、角千不是位“0时,”写大金中额以只写一可“个”零字也,以可不“零写”。

  以所述上公在式万位为当而零位不千为时零以,输不零出方式处的理应,是该符规范合。也许正是E的XCE

L采取这种样的原因式当然。如果,遵习照非要惯加上个这字也不零是可不能。不过要只增加一点公式杂度复了罢。

  一在个数中万,出会现几次不管?万是十万、、万、千百万,这个就出万一次,现果如是万万是亿,则如果是万亿又兆是,万兆?呢经超出已EXCE的处L能理了力。所答案是以字万在写大额中只金能可出一现次,只出现且整数部在。即然分这是样,用USSBITUTT(E函)数就解能问决。题判断即当位为零万而千位不零时,为用万“零来”替换万”,“其它情况不下行替进换。因为EXCEL只有这种在况下不情会出“输”零

  在四

舍五公入式,因为中要还虑尾数考入舍题,判断使问了四用五入函数舍RUNDO()公,式四的出输整数的部分式公为改:

I

FA(NDR(GIHT(NITROUND(A(SB(1A),)2/00001))=&uoq;0&tuoqt,RI;GTHI(T(NRONUD(BS(A1),2A)1/00)0&lt);&tg;&qut;o&0qot;u,S)USTITUTEBTEXT(I(NTRO(UD(ABS(AN1,))),2q&out;[DBNum2]q&uot),;q&uot;万&uotq;,qu&t;万零&ouqo;)tTEXT,(ITNR(OND(AUBS(A1),2)),q&out;[DBuNm2]quo&;t))

 而 截断式公用考不尾虑舍入问数题直,接T用UNRC)取(万和位位数千判断。来应相地式公五的整数部亦改分为:

I

(AFD(NRIHG(TTUNCR(ABSA1)(/1000))=&q0ot;u&qu0to,RI;HTGT(RNC(UABS(A)110/00))l&t>&quo;t0;q&uo;t)SU,BTITUTSE(TEX(TTUNR(ACS(AB1),&q)ut;[DBouNm]2&uqto),&;uot;万&quqt;o,qu&to;万零&qotu;)

,EXT(TRTNU(ABCS(A1),)q&ot;[DuNBm2u&]qou;t))

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

  自认

为这个两公式经考虑了已许的多细,但节也不我保敢没证有一挂万漏。现在暂时一告段落,若后以发现问再题来改修。了


相关内容

  • 四川省计算机一级考试试题填空题及答案详解
    填充题:1. 公式SUM (A3∶A8)/6等效于( ).解答:SUM (A3∶A8)/6的作用是求A3:A8单元格区域的平均值,可以直接用求平均函数AVERAGE(A3:A8)来表示,针对数值型数据还可以使用SUM(A3:A8)/COUN ...
  • 20**年职称计算机考试Excel试题之编辑工作表
    2013职称计算机考试Excel试题之编辑工作表 1. 要求:删除当前选中的单元格,并使右侧单元格左移. 答:点编辑,点删除(或点右键,点删除),选择右侧单元格左移,点确定.完成 2要求:设置允许单元格内部直接编辑和自动设置小数点位置为3位 ...
  • 中国土豪海外置业购下海外地标建筑
    中国土豪海外置业 购下海外地标建筑 > 去年以来,中国富豪们在海外 置业的消息屡屡传出,而且一次比一次震惊,海外投资热潮已然汹涌来袭.不信,一起来看看中国富人正在买下哪些海外地标. 1.王健林花费2.65亿欧元购买马德里地标性建筑西班 ...
  • 外贸邮件知识
    外贸邮件知识 A. 查一下发件人的 IP 右键单击收到的邮件,选择属性-详细信息 ip.lk52.com B. 如果你的网站有计数器,同时可以参考一下计数器里面的 IP 记录,看看是不是有这个 IP 浏览过你 的网站 C. 看看客户发来邮件 ...
  • 型钢悬挑脚手架与附着式升降脚手架的区别_0
    型钢悬挑脚手架与附着式升降脚手架的区别 > 近十多年来,落地式外脚手架.吊篮和外挂脚手架因其耗时.耗工.耗材和安全保障及经济性等多方面原因逐渐在建筑工程施工中淘汰,特别是高层.超高层建筑施工中,取而代之的是悬挑脚手架和附着升降脚手架. ...
  • 家庭装修--隐蔽工程验收
    家庭装修--隐蔽工程验收 > 简介: 家庭装修--隐蔽工程验收包括水路.电路.防水.阳台垫高.吊顶.包管等,由客户.工程监理.施工负责人参与,验收合格签字后方可继续施工.目前隐蔽工程的质量问题普遍存在,而且由于维修不便,留下很多隐患. ...
  • 建筑工程师述职报告_0
    建筑工程师述职报告 尊敬的各位领导,同事: 大家上午好!时光荏苒,转眼来到公司已经近一年半的时间,回顾2011年一年的工作历程,我从一个什么都不懂的学生渐渐融入集体并掌握设计咨询工作的各项技能,在党小组及公司领导的指导和关心下,全公司同事的 ...
  • 河南省文管二级试题
    .要求所有打开的窗口最小化.可使用鼠标右键单击______的空白区域,然后单击"最小化所有窗口". A.任务栏 B.标题栏 C.工具栏 D.状态栏 2.Windows中,若要一次选择不连续的几个文件或文件夹,正确的操作是 ...
  • 如何正确填写票据和结算凭证
    如何正确填写票据和结算凭证 根据<正确填写票据和结算凭证的基本规定>规定:银行.单位和个人填写的各种票据和结算凭证是办理支付结算和现金收付的重要依据,直接关系到支付结算的准确.及时和安全.票据和结算凭证是银行.单位和个人凭以记载 ...