Vlookup最牛的一对多查找用法
有了lookup和xlookup,总觉得Vlookup没什么用。其实,有帮手的Vlookup函数,比前两者还要牛×。今天我们用Vlookup完成超高难度的一对多查找。
商品入库明细表
要实现的合并效果:(把某个商品所有进货记录放在一个单元格里并除重复)
想实现这个合并效果并不容易,为方便同学们理解,我们先简后繁,先放弃显示A列的日期。
1、添加辅助列:
D11单元格公式
=C11&IFERROR(CHAR(10)&VLOOKUP(B11,B12:D$12,3,),'')
公式说明:
整个公式是利用循环连接的方式在最上面一个记录中生成连接结果
CHAR(10):返回换行符,在字符串指定位置强制换行
VLOOKUP() :查找下面指定产品的已连接的价格字符串
IFERROR( :如果下面没有就返回空白
2、生成连续结果
在下表中用vlookup函数直接从上表中查找返回辅助列的结果,最后还要设置为自动换行。
=VLOOKUP(A14,B1:I11,3,0)
明白连接原理后,只需要稍修改公式,把日期用text函数格式化后,连接到字符串中即可:
D11单元格:
=TEXT(A11,'yyyy-mm-dd')&'入库单价:'&C11&IFERROR(CHAR(10)&VLOOKUP(B11,B12:D$12,3,),'')
注:如果不用text函数,日期会显示为数字。
如果想除去重复值,辅助列还要加上重复值不连接的判断
D11的公式修改为:(由于时间来不及,公式未优化)
=IF(IFERROR(VLOOKUP(B11,B12:C$12,2,)=C11,0)-1<0,TEXT(A11,'yyyy-mm-dd')&'入库单价:'&C11&CHAR(10),'')&IFERROR(VLOOKUP(B11,B12:D$12,3,),'')
最后结果为:
兰色说:今天实现的功能够强大,但公式相对来说也够复杂。不过,公式并不难。如果你觉得看不懂,兰色建议你是该提升一下自已的Excel函数水平了。