Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 5000|回复: 7

[已解决][求助]=MID(REPT(" ",8-LEN($E5*100)*($E5""))&$E5*100,COLUMN(A5),1)

[复制链接]
发表于 2009-11-12 10:37 | 显示全部楼层 |阅读模式

=MID(REPT(" ",8-LEN($E5*100)*($E5<>""))&$E5*100,COLUMN(A5),1)

请帮忙解释下这公式的意思,谢谢

最佳答案
2009-11-12 10:55

估计E5是298.56之类的数字,从公式表面的意思来看,解释如下:

如果E5单元格不为空的话(*($E5<>"")),就将E5的值放大一百倍($E5*100),不够八位的(8-LEN($E5*100)*($E5<>""))用空格在前面填充(REPT(" ",8-LEN($E5*100)*($E5<>""))&$E5*100),然后从第1位(COLUMN(A5))开始取数(MID),只取1位。

发表于 2009-11-12 10:40 | 显示全部楼层

附件都没有,让人怎么跟你说道道咧.

回复

使用道具 举报

发表于 2009-11-12 10:41 | 显示全部楼层
回复

使用道具 举报

发表于 2009-11-12 10:50 | 显示全部楼层

公式里有定值啊

column(A5)=1

REPT(" ",8-LEN($E5*100)*($E5<>""))=N个空格,这个N=8-E5*100得到数字的长度

所以主要看$E5*100等于多少,如果$E5*100等于8位数,N=0

这个公式只在E5为六位数的时候才显示有效的数据,这个时候rept得到的值为空

所以显示E5中第一位数字

小于六位数时显示空格(看不见而已)

大于六位数显示错误(rept第二个参数为负数导致错误)

[此贴子已经被作者于2009-11-12 10:52:07编辑过]
回复

使用道具 举报

发表于 2009-11-12 10:55 | 显示全部楼层    本楼为最佳答案   

估计E5是298.56之类的数字,从公式表面的意思来看,解释如下:

如果E5单元格不为空的话(*($E5<>"")),就将E5的值放大一百倍($E5*100),不够八位的(8-LEN($E5*100)*($E5<>""))用空格在前面填充(REPT(" ",8-LEN($E5*100)*($E5<>""))&$E5*100),然后从第1位(COLUMN(A5))开始取数(MID),只取1位。

回复

使用道具 举报

发表于 2009-11-12 11:04 | 显示全部楼层

要看公式的意思可以使用工具中的公式审核功能,

如果要学函数的功能,可以参考帮助.

回复

使用道具 举报

发表于 2011-7-9 17:46 | 显示全部楼层
没搞懂
回复

使用道具 举报

发表于 2011-7-9 18:03 | 显示全部楼层
有点复杂。。。
回复

使用道具 举报

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

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-18 07:33 , Processed in 0.245425 second(s), 10 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表