发布网友
共3个回答
热心网友
假设原金额数据在A1。思路如下:
一、先用将金额转为带¥的文本:
=TEXT(A1,"¥0.00")
二、当A1=0,则返回“¥0.00”,返回的文本最小5个字符;
又由于金额最大为亿位,文本长度应为12个字符(含小数点)。
故先在这个文本前补上空格,使其长度固定为12个字符。
上述公式变为:
=RIGHT(REPT(" ",7)&TEXT(A1,"¥0.00"),12)
三、剩下就是从这个文本中截取字符到每个位置上。
在亿位取文本的第1个字符,输入公式:
=LEFT(RIGHT(REPT(" ",7)&TEXT(A1,"¥0.00"),12))
在千万位截取文本的第2个字符:
=MID(RIGHT(REPT(" ",7)&TEXT(A1,"¥0.00"),12),2,1)
如此类推,在个位截取第9个字符,在角位要跳过小数点位,截取第11个字符
当然,很多人喜欢在公式上中用COLUMN()函数计算要截取的第几个字符,
这样设置好在亿位的公式,然后向右拉。
这里也不过11个格,一个一个改也不用费多少时间,何必将公式搞得那么长呢?
热心网友
=MID(REPT("",COLUMNS($B:$L)-LEN($A2*100))&"¥"&$A2*100,COLUMN(A:A),1)
或
=MID("¥"&$A2*100,COLUMN(A1),1)
这样试一下
热心网友
=TEXT(MID(REPT("
",COLUMNS($B:$L)-LEN($A2*100))&$A2*100,COLUMN(A:A),1)
," ¥0; ¥-0; ¥0")追问试了一下,没有用呀