欢迎转发和点一下“在看”,文末留言互动!
置顶公众号或设为星标及时接收更新不迷路
小伙伴们好,有过物料计划工作经验的朋友们都知道,在BOM中有第一层的组件,每个组件下面还有第一层的母件,每个母件下面还有更低一层的子件等等。今天就是要和大家分享一道如何利用VLOOKUP函数来抓取母件及子件名称的案例。
先看一下题目的要求。
这是一个著名公司的BOM清单的一部分。我们看到了,在A列中有三层BOM构成,现在我们需要在B列和C列中分别将母件的名称和子件的名称抓取出来。该如何操作呢?
01
巧用MOD函数,VLOOKUP函数抓取母件名称
仔细观察一下A列中的源数据特点,我们就会发现,代码都是长度为6的字符串。其中母件的后三位都是0,子件的后两位都是0。这就是这组数据的规律,也是我们今天解决这个题目的关键。
我们先看看如何抓取母件的名称。
在单元格C2中输入下列公式并向下拖曳即可。
=IF(MOD(A2,1000),VLOOKUP(A2-RIGHT(A2,3),A:B,2,0),"")
思路:
母件后三位都是0,那么A3-RIGHT(A2,3)的结果就是母件本身,因此利用VLOOKUP函数抓取的结果就是母件的名称
当当前行是母件所在行时,由于MOD()函数返回的是“0”,即为“FALSE”,因此整个公式返回空值
小伙伴们,你们理解这个公式了吗?
02
同样逻辑抓取子件名称
下面再来看看如何提取子件的名称的。有了上面的经验,子件名称的提取也变得非常简单了。
我们在单元格D2中输入下列公式并向下拖曳即可。
=IF(MOD(A2,100),VLOOKUP(A2-RIGHT(A2,2),A:B,2,0),"")
由于和上面的公式的逻辑思路完全一样,因此这里我们就不做多做解释了。唯一不同的地方就是,MOD函数对A2单元格进行100求余。
-END-
长按下方二维码关注EXCEL应用之家
面对EXCEL操作问题时不再迷茫无助
我就知道你“在看”