公式解析
INDIRECT:返回由文本字符串所指定的引用。
=B3
=INDIRECT(C3)
=INDIRECT("C3")
用法解析1:隔行引用
提取员工工资:=INDIRECT("C"&ROW(A1)+ROW(A2))
解析:
员工工资需要引用C3、C5、C7、C9单元格
step1:首先我们需要得到目标行号3、5、7、9
起始行号ROW(A1)-ROW(A4),即1-4,与目标行号3-9的差值为2-5
ROW(A1)+ROW(A2)得到目标行号3,鼠标放到单元格右下角出现十字后向下拖拽
step2:引用C3、C5、C7、C9单元格
我们以C3为例:=INDIRECT("C3")
用&符号进行连接:=INDIRECT("C"&3)
再将行号公式套入:=INDIRECT("C"&ROW(A1)+ROW(A2))
鼠标放到单元格右下角出现十字后向下拖拽
用法解析2:反查
查询王思睿的工号:=INDIRECT("B"&MATCH(E2,C3:C9,0)+2)
解析:
王思睿工号位于C5单元格,即INDIRECT("C"&5)
MATCH:返回元素在数组中的相应位置
MATCH(E2,C3:C9,0)查询到王思睿位于C3:C9的第三个,在此基础上+2得到目标行号5
最后将INDIRECT("C"&5)的行号5替换为MATCH(E2,C3:C9,0)+2即可:
=INDIRECT("B"&MATCH(E2,C3:C9,0)+2)
用法解析3:跨表引用(配合VLOOKUP)
分别从1月、2月、3月、4月表格中提取销售额到总表中
1-4月销售明细如下:
=VLOOKUP($B2,INDIRECT("'"&C$1&"'!$B:$C"),2,FALSE)
解析:
step1:提取表"1月"的数据,使用VLOOKUP函数
=VLOOKUP($B2,'1月'!$B:$C,2,FALSE)
step2:使用INDIRECT函数引用不同表格数据
=VLOOKUP($B2,'1月'!$B:$C,2,FALSE)
=VLOOKUP($B2,INDIRECT("'"&C$1&"'!$B:$C"),2,FALSE)
详解:
【'1月'!$B:$C】拆分成【'】【1月】【'!$B:$C】三个部分
【'】【'!$B:$C】文本前后用""符号括起来【"'"】【"'!$B:$C"】
【1月】替换为【C$1】,&符合进行连接,即【"'"&C$1&"'!$B:$C"】
今天的内容就到这里,点赞收藏起来吧,感谢观看!