我有一个包含很多表格的电子表格,我想知道从 iWork Numbers 中的单元格中查找表格名称的公式是什么?例如,我有一个名为 TableA 的表,我想在该表内放置类似“=$B1”之类的内容,以便在其中获得名称“January01”。只输入它是不可接受的,因为这些表名称会在一个月中的多天发生变化(我们计划在一个电子表格中有 30-31 个表格,并有 12 个电子表格的月数)。
3 回答
可以使用另一个单元格中的文本来指定单元格中的工作表和/或表格名称或另一个单元格中公式内的范围地址。您可以使用间接功能。
“INDIRECT 函数返回由指定为字符串值的地址引用的单元格或范围的内容。”
从 iWork Numbers 功能浏览器
例子:
假设特定表格的 A 列中的单元格包含工作簿中工作表的名称。
在 B 列中,您可以使用以下方法计算每张表中表 1 的 D 列中包含文本“等于”的单元格的数量:
=COUNTIF(INDIRECT($A2&"::Table 1::$D", 1),"=equal")
这里工作表名称在 A 列中指定,因此公式可用于整个列,而无需手动编辑公式来指定工作表名称。
根据此支持论坛条目,这是不可能的。当我正在寻找解决同一问题的方法时遇到了它。
这是一个非常古老的线程,但这里是如何获取表名:
您需要使用 REFERENCE.NAME 函数来获取表的名称(加上一些无关的信息,您可以使用 TEXTBEFORE 函数摆脱这些信息)。
TEXTBEFORE(REFERENCE.NAME(SomeTableName::$A$1,1),":")
条目“SomeTableName::$A$1”是您有兴趣获取其名称的表中的随机单元格引用(在本例中为单元格 A1)。在公式输入过程中,您只需单击相关表格的单元格即可生成此引用,然后根据需要锁定单元格列和行。
单元格引用后面的参数“1”告诉 REFERENCE.NAME 函数返回表格名称和单元格名称。没有选项只返回表名。
TEXTBEFORE 函数将返回的字符串截断为第一个冒号之前的所有内容,只返回表名。