我正在制作一个“合并网格”电子表格。它有每个项目的工作表,然后有一个主网格,列出每个工作表的状态。一切都很顺利,除非项目工作表恰好有这样的合并单元格:
这使得合并后的网格看起来像这样:
这是因为网格引用了:(F1 包含工作表名称)
=INDIRECT(CONCATENATE("'",F$1,"'!F12"))
=INDIRECT(CONCATENATE("'",F$1,"'!F13"))
=INDIRECT(CONCATENATE("'",F$1,"'!F14"))
=INDIRECT(CONCATENATE("'",F$1,"'!F15"))
=INDIRECT(CONCATENATE("'",F$1,"'!F16"))
而项目单元现在的排序如下:
F12
F13
F14
F16
F17
我只是在寻找解决此问题的基本思路。请记住,多行项目任务并不总是相同的。
答案1
您已经发现了使用合并单元格的 (众多) 缺点之一。任何使用顺序单元格引用的公式在涉及合并单元格时都会失败,因为合并单元格地址仅使用左上角单元格来引用整个合并范围。合并范围内包含的单元格引用将返回零。
这就是合并单元格的工作方式。
您需要更改公式,以便它根据项目表上的里程碑列中的任务名称查找值。这也意味着您不能有重复的任务名称,因为只会返回第一个匹配的任务,但您可以继续使用合并单元格。
请考虑以下屏幕截图:
在单元格 B2 中复制下来的公式是
=INDEX(INDIRECT("'"&$F$1&"'!F:F"),MATCH(A2,INDIRECT("'"&$F$1&"'!E:E"),0))
根据需要调整单元格引用。