0

我设计了一个 Excel 'Master' 工作表,在其后面的单独 W/S 上连续几个月(即 Master、jul2013、aug2013 等)。我想插入一个执行以下操作的 IF 语句:

如果 B2 = 说“aug2013”​​,则从 Master 的单元格 E2 中查看“Master”B2,然后转到工作表“aug2013”​​并带回“单元格 B102”的内容。

在主工作表上,这将需要在下一个单元格中重复(即 E3 检查 B3,转到相应的工作表,然后检索单元格 B102)。

我尝试了多个 if 语句,但运气不佳。

VBA 有帮助吗?

任何想法都非常感谢!

4

2 回答 2

0

如果我理解正确并基于 Excel 2007,因为始终需要 B102:

=INDIRECT(B2&"!B102")  

应该发球(抄下来以适应)。

正如@ChristianPayne 所提到的,这要求将 B2 等格式化为文本(因为工作表名称是字符串!)

间接的。

于 2013-08-22T02:00:12.883 回答
0

(有时,如果您包含您尝试过的示例,它会有所帮助 - 它可以让您深入了解您的想法,并且可以更容易地指出哪里出了问题。)

我做了以下示例:1 x Worksheet - Master 2 x Worksheets (Jul2013 & Aug2013)

在主工作表上,确保您已将值作为文本输入(在值前使用撇号 (')),否则 Excel 会认为它是日期。

E2 中的公式为:

=IF(B2="Jun2013",'Jun2013'!B102,IF(B2="Jul2013",'Jul2013'!B102,IF(B2="Aug2013",'Aug2013'!B103,"Can't find it")))

将其复制并粘贴到剩余的行中。

  • 单元格 E2 向您显示“Aug2013”​​中的内容!B103
  • 如果参考单元格 (B3) 是日期,则单元格 E3 会发生什么
  • 单元格 E4 是如果您引用不存在的工作表会发生什么情况的示例

截屏

于 2013-08-22T01:51:03.503 回答