在Excel 2010中嵌套的间接函数
在我们的办公室里,我们有一个共享的excel,每个人都有自己的页面可以工作。(共享)我们也有一个共享文件提供的表单。 (形成)
在FORM中,我创build了具有间接公式的公式,因此用户可以简单地在单元格A5中写入他们的名字,并从他的共享页面(单元格A12)中写入行号,然后表单将用来自共享的数据更新。
但是,我们已经意识到,我们经常需要更改Shared excel的名称。 共享1或2等等。
我试图添加第二个嵌套的间接,在单元格J2添加碎片Excel的名称,而不是我进入所有的公式和手动更改Excel的名称。 (得到一个ref错误)
这里是目前工作的公式,没有第二个间接的。 我正在尝试使用两个indirects,所以在J2中将添加将经常改变的excel的名称:
=VLOOKUP(A12,INDIRECT("'[_sharedpo1.xlsm]"&$A$5&"'!$A:$U"),3,FALSE)
逻辑:lookup(行索引,在页面的sharedpo1用户A5,从第三列,exactmatch)
_sharedpo1.xlsm是excel的名字,以前是_sharedpo.xlsm,上帝知道什么时候可能是_sharedpo2.xlsm,而且必须是间接的。
不需要第二个INDIRECT
,只需在第一个string中构build整个string即可
假设
– A5
保存工作表名称
– A4
没有[]
保存工作簿名称
– 共享工作簿已打开
– A12
保持查找值
使用
=VLOOKUP(A12,INDIRECT("'[" & A4 & "]" & A5 &"'!$A:$U"),3,FALSE)
你可以走得更远
-
A6
保持查找范围$A:$U
- 在
A7
build立间接string="'[" & A4 & "]" & A5 &"'!" & A6
="'[" & A4 & "]" & A5 &"'!" & A6
所以你可以validation它
式
=VLOOKUP(A12,INDIRECT(A7),3,FALSE)