我想让我的excel公式动态化

时间:2014-05-09 00:18:42

标签: excel dynamic reference formulas

有点奇怪的要求。我有20张工作表,名为Worksheet1,Worksheet2,Worksheet3 ... Worksheet20。

在单元格A2中的SheetA上,我有一个下拉菜单,用户可以在其中选择"工作表1","工作表2" ..."工作表20"

当用户更改该单元格A2时,我希望SheetA上的所有单元格将其引用从Worksheet1更改为Worksheet2。因此,而不是具有公式的单元格B2:Worksheet1!C2,我希望该单元格具有公式:Worksheet2!C2。因此,Worksheet1!C2的值为" Texas"。 Worksheet2!C2的值为#34; Wyoming"。

因此,如果我更改了SheetA(" A2)",那么我希望该值从" Texas"到怀俄明州"。你能帮助我让公式动态吗?谢谢!

1 个答案:

答案 0 :(得分:0)

如果下拉菜单是Form Control / ComboBox,则其链接的单元格将包含值1,2等。在另一个单元格中,您将使用INDEX()将所选值转换为文本Worksheet1,Worksheet2等。

您的所有公式都将是:

=INDIRECT(C1&"!A1")

其中C1包含文本Worksheet1(或Worksheet2等),A1是您要从此工作表中检索的特定单元格值。

请注意,“A1”现在是一个字符串,因此将行或列插入其中一个工作表中不会导致它像正常情况那样改变。

已添加:如果在链接的工作表中插入行/列,则要更改单元格引用,您将使用此版本:

=INDIRECT("'"&C1&"'!"&CELL("address",A1))

(由同事提供,Hans。)