【问题标题】:Index Match Works on some cells, not others索引匹配适用于某些单元格,而不适用于其他单元格
【发布时间】:2026-02-07 09:50:01
【问题描述】:

我使用这个索引匹配公式没有问题: =INDEX('9个站的降雨数据'!A:S,MATCH(RainWICSProximity!J100,'9个站的降雨数据'!A:A,0),INDEX($N$4:$N$12,MATCH(H100, $M$4:$M$12,0)))

我添加了更多数据,现在它只返回一些值,而为其他值返回 #N/A,即使有要返回的值。

【问题讨论】:

  • 只是一个想法,您是否尝试将其作为数组公式输入?
  • 我也试过了,但仍然返回的值没有运气#N/A
  • 请用文字解释您要做什么,因为您的公式不清楚

标签: excel


【解决方案1】:

索引返回一个范围内的值。

你正在做的是=INDEX(MATCH(),INDEX(MATCH()))。由于一些运气,它可以工作,因为有时第二个Index() 也会返回带有值的单元格。但是,如果第二个索引返回空值的单元格,则第一个索引必须返回类似=Index(4,0) 的内容,即#N/A

一般来说,试试=Index(Match(),Match())

要查看错误的确切位置,请选择包含公式的单元格,然后转到 Excel 功能区 > 公式 > 评估公式。 然后按几次Evaluate Formula,看看会发生什么:

See this answer for step-by-step formula evaluation.

【讨论】:

  • 所以它会是:=INDEX('9 个站的降雨数据'!A:S,MATCH(RainWICSProximity!J100,'9 个站的降雨数据'!A:A,0),MATCH ($N$4:$N$12,MATCH(H100,$M$4:$M$12,0))) ?
  • hm,我试过 =INDEX('9 个站的降雨数据'!A:J,MATCH(E2,'9 个站的降雨数据'!A:A,0),MATCH(G2, '9 个站的降雨数据'!A:J,0)),仍然没有运气,但这个解决方案似乎是正确的方法
  • @user7618007 - 查看我的答案的编辑,你会发现错误在哪里。
【解决方案2】:

@Vityata 是正确的,Index、Match、Match 非常有效,而且我原来的公式也有效。

问题是,我在 Excel 设置中将计算设置为手动,而不是自动。

【讨论】:

    【解决方案3】:

    我相信你需要扩大你的范围。我对索引匹配并不是很熟悉,但我正在努力学习更多地使用它,但我相信它有点像 VLOOKUP。您的范围 $N$4:$N$12 和 $M$4:$M$12 看起来正确吗?如果是这样,即使您添加了更多数据,这些范围也不会扩大。因此,您需要将其扩展为 $M$4:$M$100 或其他。或者展开它以找到我通常做的最后一行。像我的将是 "$M$4:$M" & LastRow & "" 或类似的东西。

    【讨论】:

    • 嗯,看起来 Vityata 可能有正确的答案我没有注意到双索引。我还是新手,但想帮忙:)所以我的回答可能没有意义。