莱大您好。这两天工作比较忙,在出一个项目的设备安装需求图,没有多少时间仔细研究这个文件。不过我也并没有偷懒,在手机上下了个VB教程的APP了,在有时间就瞄几眼学一下。
对于您这个文件,我主要是卡在了你的一行代码上。
=IF(MID(A5,ROUNDUP((LEN(A5)-LEN(A$1))/3,0)*3+LEN(A$1)-2,1)=".","装配","-零件-")
请问下,这一行代码,ROUNDUP((LEN(A5)-LEN(A$1))/3,0)*3 ,想请问下,为什么(LEN(A5)-LEN(A$1))的结果要除以这个3呢?这一步的思路是什么呢?是因为表里的装配体代号加上前面的符号段(这例里的.号)的字符长度都是3位吗?我试了下,如果装配体的编号超过10时,这一个部件被识别成了零件。同时后面的那例乘号和加号的混合运算的结果也会出错了,比前面的.05 .07 .08等的运算结果都要小了。且装配体的编码为.012等三位数值时,后面的混合运算的结果就报错了。出错的情况如附件和图片所示。如果用这代码的话,那就是以后部件编码最多到.09了,从.010的组件开始后面的就会有问题了(因为我们公司的规定是部件的编码前面必须得加这个数字“0”)。这个问题应该怎么解决?请莱大指点指点,谢谢。
|