VIP学员的问题,通过下拉选择部门,要查找对应科目编码每个月的费用预算。所有工作表格式一样。
这是很常见的多表查找,思路就是先根据
软件产品中心,查找科目编码、月份对应的费用预算,最后通过INDIRECT间接引用单元格的部门名称。
先来回顾一下昨天的案例,根据姓名查找奖金。
VLOOKUP函数语法:
=VLOOKUP(查找值,查找区域,区域第几行,查找模式)
按照这个语法,就可以查找1月的值。
=VLOOKUP(A2,软件产品中心!A:O,3,0)
同理,2月:
=VLOOKUP(A2,软件产品中心!A:O,
4,0)
3月:
=VLOOKUP(A2,软件产品中心!A:O,
5,0)
依次类推,右拉的时候,要将3变成4、5、6……这个可以通过COLUMN获取。
=COLUMN(C1)
公式要右拉,前面区域不需要变动,因此加美元符号锁定,组合起来
对应的值就都找到了。
=VLOOKUP($A2,软件产品中心!$A:$O,COLUMN(C1),0)
部门是通过B1这个单元格间接选择,因此嵌套INDIRECT就可以。
=VLOOKUP($A2,INDIRECT($B$1&"!A:O"),COLUMN(C1),0)
不要把INDIRECT想得很复杂,其实这个就是起到一个辅助的作用。
举个
最简单的例子,现在要引用
软件产品中心
的C2单元格。
直接引用:用鼠标选择这个表的区域。
=软件产品中心!C2
间接引用:将表格名称写在B1,通过单元格来引用区域。只要是多表的几乎都会用到
INDIRECT,记住这句话就行。
=INDIRECT($B$1&"!C2")
今天就分享到这里,明天见。
推荐:
上文:
作者:卢子,清华畅销书作者,《Excel效率手册 早做完,不加班》系列丛书创始人,个人公众号:Excel不加班(ID:Excelbujiaban)
有话要说...