0

我有一组数据分组并根据它们的类别分配“名称”,例如水果:苹果,橙子,猕猴桃......和蔬菜:番茄,洋葱,卷心菜......这里苹果,橙子,猕猴桃定义为名称称为水果和类似的番茄,洋葱,卷心菜与名称蔬菜。

在我的工作表中,我有单元格 Apple、Tomato 等,并且想提取分配给它们旁边的名称。我使用了 =INDIRECT(Cell Address),不幸的是没有用。这有什么公式吗?

4

3 回答 3

1

特别是如果你想避免冗长的公式和 VBA,我建议你重新排列你的数据。

  • 将类别名称放在第 1 行
  • 格式化为表格并为表格命名。(我给它起了名字Foods

然后你的公式变得简单:

=INDEX(Foods[#Headers],1,MAX((ISNUMBER(SEARCH(D33,Foods))*COLUMN(Foods))))

其中D33包含食物的名称

在此处输入图像描述

您可以使用常规范围和寻址,但使用表格会使名称和范围动态化

于 2021-09-06T11:40:58.223 回答
0

如果您定义了许多 Named,那么这将是不切实际的。但是你只有两个或几个名字,那么你可以试试下面的公式。这里Fruits命名 range 是A1:A3Vegetables命名 range 是B1:B3

=IF(SUM(--(Fruits=D1))>0,"Fruits",IF(SUM(--(Vegetables=D1))>0,"Vegetables","No Group"))

对于旧版本的 excel,您可能需要使用CTRL++进行数组输入。SHIFTENTER

在此处输入图像描述

于 2021-09-06T10:14:03.803 回答
0

可能是误会。但是当间接引用单元格地址时,你是这样写的吗?

=INDIRECT(B2) 或 =INDIRECT("B2")

于 2021-09-06T10:03:01.870 回答