利用公式格式化大众零件号
来源:网络收集 点击: 时间:2024-05-18库房报上来的零件号列表画风是这样的

而大众康采恩标准的零件号格式是这样的(见附图)
其中还有一些特殊要求
①零件号中没有i,o
②所有的字母均为大写
③零件号最短为9位,最长为14位

我们来看一下最终实现的效果,只需要将写好的公式复制进去即可
大家不要被公式的内容吓到了,虽然公式很长,但其实逻辑上并不复杂,下面我们就来一步一步的看看公式是如何完成的。(注:公式都是以第二行单元格为例)

清除零件号中非法空格
手动录入的零件号容易出现非法空格,所以我们要先将零件号中的非法空格去掉。
这里我们可以用substitute函数将空格替换掉
公式:
SUBSTITUTE(A2, ,)

将零件号中小写字母转大写
根据大众的要求,零件号中所有字母均为大写,所以我们要将零件号中的小写字母替换成大写的。
这里我们可以用upper函数将小写字母替换成大写的
公式:
UPPER(B2)

将零件号中的“IO”替换成“10”
根据大众的要求,零件号中不能存在I和O这两个字母(为了区分1和0),如果出现了要将他们替换成1和0.
这里我们依然可以用substitute函数将I和O替换掉
公式:
SUBSTITUTE(SUBSTITUTE(C2,I,1),O,0)

判断是否为标准件
我们之前提到过,标准号是以N_ _开头的,我们在这里要区分一下该零件号是不是标准的,如果是的话,要把它变成“N_ _”格式的
这里我们来用if函数判断一下左边第一个字母是不是N,如果是的话,就把它变成“N_ _”,如果不是就不变。
公式:
IF(LEFT(D2,1)=N,REPLACE(D2,1,1,N ),D2)

分隔零件号
接下来,我们要按照前面的大众零件号标准格式来将零件号分成4部分
1.车型代码
车型代码就是零件号的前三位
我们可以用mid函数来截取出零件号的前三位
公式:
MID(E2,1,3)

2.前中间号
前中间号就是零件号的第四位到第六位
我们依然可以用mid函数来截取出零件号的第四位到第六位
公式:
MID(E2,4,3)

3.后中间号
后中间号就是零件号的第七位到第九位
我们依然可以用mid函数来截取出零件号的第七位到第九位
公式:
MID(E2,7,3)

4.改进码与颜色码
改进码与颜色码这里稍微复杂一些,需要根据零件号的长度来区分一下
如果零件号的长度是9,说明该零件号没有改进码与颜色码,就返回一个空
如果零件号的长度是10/11,说明该零件号有1/2位改进码而没有颜色码
如果零件号的长度是12,说明该零件号有3位颜色码而没有改进码
如果零件号的长度是13/14,说明该零件号有3位颜色码且有1/2位改进码
如果长度大于14或者小于9,表示该零件号不符合标准
公式:
IF(LEN(E2)=9, ,IF(LEN(E2)=10, MID(E2,10,1),IF(LEN(E2)=11,MID(E2,10,2),IF(LEN(E2)=12,MID(E2,10,3),IF(LEN(E2)=13,MID(E2,10,1)MID(E2,11,3),IF(LEN(E2)=14, MID(E2,10,2) MID(E2,12,3),未知))))))

生成标准零件号
我们将拆解完的零件号重新合在一起,就是我们想要的标准零件号了(注意每一项只见要用空格分开);如果是不符合标准的零件号,我们就返回太长/太短
公式:
IF(LEN(E2)14,太长,IF(LEN(E2)9,太短,F2 G2H2I2))

合并公式
我们的公式已经写好了,只是如果日后每次用的时候都像现在这样一步一步的套公式未免有些麻烦,我们可以将上面的公式合并为一个大公式。
我们可以用逐层嵌套的方式来合并公式。例如:C2中的公式为“=UPPER(B2)”,我们将“B2”替换为B2单元格中的内容,就将B2与C2合到了一起,以此类推,最后合成一个大公式。
最后合并完成后我们只保留最重要的3列

版权声明:
1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。
2、本站仅提供信息发布平台,不承担相关法律责任。
3、若侵犯您的版权或隐私,请联系本站管理员删除。
4、文章链接:http://www.1haoku.cn/art_792842.html