匹配/精确搜索以从 Table 定义中检索 Headers

MATCH / Exact SEARCH to retrieve Headers from Table Definition

我有一个示例 table 定义 A1:C4 指定为“食品”,如下所示。我正在另一个 sheet 上搜索关键字并检索 table 的 Header 名称,如果它们存在于 table body 中。对于 F6 中的唯一数据,以下公式效果很好,如果两列具有与 A3 和 B4 中部分相同的关键字“Orange”,则该公式不会 return 所需的结果。

=INDEX(Foods[#Headers];1;MAX((ISNUMBER(SEARCH(F7;Foods))*COLUMN(Foods))))

因此,为了获得完全匹配,我尝试了以下公式,但都没有完全奏效。他们正在 return 处理整个 Header 列表,如 H7:J7.

=INDEX(Foods[#Headers];1;MAX((ISNUMBER(MATCH(F7;Foods;0))*COLUMN(Foods))))
=INDEX(Foods[#Headers];1;MAX((ISNUMBER(MATCH(TRUE;EXACT(F6;Foods);0))*COLUMN(Foods))))

我应该如何获得 table 中匹配数据的准确 header?我肯定要搜索确切的关键字,因为在其他列中有几个部分匹配的关键字。

您可能会受益于 SUMPRODUCT、COLUMN 和 INDEX:

我得到 header 的公式是:

=IFERROR(INDEX($A:$C;1;SUMPRODUCT(--($A:$C=F6)*COLUMN($A:$C)));"not found")