在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
  • A7build立间接string="'[" & A4 & "]" & A5 &"'!" & A6 ="'[" & A4 & "]" & A5 &"'!" & A6所以你可以validation它

 =VLOOKUP(A12,INDIRECT(A7),3,FALSE)