如何在多 row/column Excel 电子表格 table 中查找值的位置?

How to Find the location of a value in a multi row/column Excel spreadsheet table?

如何找到值 119 或下面 table 中的任何其他数字的单元格地址或最好是行和列?

table 不包含行或列标题,仅包含显示的数字。

我正在寻找工作表解决方案(公式)而不是 VBA 解决方案。

嗯,笨重,你可以扩展它,但它确实有效:

行与列是分开的,但您可以将它们放在一个单元格中,这取决于您希望如何使用结果,但您没有指定,所以我这样做了...

您可以使用 choose() 函数或带有 vlookup() 的查找 table 将列结果更改为字母...

请尝试:

=MOD((K1-50),34)+1&" | "&1+(INT((K1-50)/34))

其中 K1 是您选择的值。

ReturnsR | C。 (不需要 A1:J34 中的数据。)

数组公式

这是一个数组公式,必须使用control shift enter输入,即按住control shift然后按回车键。

=MAX(IF(A1:J34=119,ROW(A1:J34)-ROW(A1)+1))

备注:

该值按列搜索,即 A1, A2, ... B1, B2 ... 即如果您在单元格 D1 中有另一个 119,结果仍然是 2 ,如果您在单元格 c1 中有一个 119,那么结果将是 1.

对于列版本,只需将 ROW 替换为 COLUMN:

=MAX(IF(A1:J34=119,COLUMN(A1:J34)-COLUMN(A1)+1))

以下是基于 VBasic2008 答案的通用答案。

我修改了公式以使用定义的名称,这样单元格引用就不必在公式中进行硬编码。这样,数据 table 和行/列公式都可以重新定位到电子表格的任何位置。它适用于基于数字和文本的数据。

我还将 =ADDRESS() 函数包含在 return 查找值的绝对引用中。

出于说明目的,显示了数据集 1 的分步示例,用定义的名称替换了硬编码的单元格引用。

数据集 2 部分是简化版本,仅使用为每个行和列查找值定义的一个。

您可以在此处下载示例电子表格:Look_Up_a_Value_in_a_Table.xls

感谢大家:Solar Mike、VBasic2008 和 pnuts

点击图片放大。