关于EXCEL批量替换

来源:百度知道 编辑:UC知道 时间:2024/07/12 07:33:14
是软件导出来的物料代码。
A列为物料代码,
KYM.Z.001
KYM.Z.002
KYM.Z.003
KYM.Z.004
……
KYM.Z.600

上述的是一级物料代码,在这些一级物料代码下面有相同的9个二级物料代码。代码为:
KYM.Z.001.11
KYM.Z.001.22
KYM.Z.001.33
KYM.Z.001.44
KYM.Z.001.55
KYM.Z.001.66
KYM.Z.001.77
KYM.Z.001.88
KYM.Z.001.99
我在录完KYM.Z.001的下级之后,把这9行人工的复制-选择性粘贴了600次。囧~~~
也就是现在每个一级代码下面都有9个相同的二级代码,我现在需要做的就是把二级代码改成对应的一级代码位数。
例如:
KYM.Z.098,他的二级代码的001就得全部替换成KYM.Z.098.11…
KYM.Z.432,他的二级代码的001就得全部替换成KYM.Z.432.11…

请问各位大侠有什么方法可以实现吗?
KYM.Z.XXX是一个大类。每个大类下面都有9个相同的子类,KYM.Z.XXX.11、KYM.Z.XXX.22、KYM.Z.XXX.22…
我已经把这些子类全部复制到大类的下面了,因为是复制KYM.Z.001的,现在需要做的就是把001替换成对应的上级代码。
例如我现在 KYM.Z.098他下面9个子类的代码还是KYM.Z.001.11、KYM.Z.001.22、KYM.Z.001.22…但要导入软件得改成KYM.Z.098.11、KYM.Z.098.22、KYM.Z.098.22…

直接输入如下公式下拉,就可以生成你需要的编码序列,不需要粘贴600次再更改!

="KYM.Z."&TEXT(INT((ROW(A1)-1)/9)+1,"000")&"."&(MOD(ROW(A1)-1,9)+1)&(MOD(ROW(A1)-1,9)+1)

在B1输入
=OFFSET($A$1,(ROW(A1)-1)/9,)
下拉

在C1:C9分别输入11,22,33,44,……99
选中C1:C9
下拉

在D1输入
=B1&"."&C1
下拉

表达不够清晰,推测一下:

在第一个单元格输入公式
="KYM.Z."&TEXT(INT((ROW(A1)-1)/9)+1,"000")&"."&TEXT(MOD(ROW(A1)-1,9)+1,"000")
将此公式向下复制,看看是不是你要的,如果是,则你复制600次的工作也省得做了!