需要帮助查找数组中的值

问题描述 投票:0回答:2

我需要帮助根据 F3 中的城市名称查找单元格 G3 中 3 个月之间的“最低温度记录 (°C)”。 有什么想法吗?

下图显示了我的表格

enter image description here

感谢您的任何帮助!

excel excel-formula datatable array-formulas
2个回答
0
投票

如果A列的条目结构是固定的(如图所示),那么你可以使用公式:

=MIN(OFFSET(INDIRECT("A" & MATCH(F3;A:A;0));6;1;1;3))

还有一个没有间接的更简单的版本。 (为了解释逻辑,我设置了-1+6而不是5)

=MIN(OFFSET(A1;MATCH(F3;A:A;0)-1+6;1;1;3))

0
投票

也许你可以尝试使用像 INDEX( ) 这样的函数,而不是使用像 OFFSET( )INDIRECT( ) 这样的 volatile 函数。

友情建议

OFFSET( ) 是一个灵活的函数,它可以指向一个 即时计算的不同大小的范围。但这是一个 易失性功能。如果您转到完全不相关的单元格并输入数字,则所有 OFFSET( ) 函数都将 计算——即使该单元格与此无关。

发现,Excel很细心地花时间计算 需要计算的单元格。但是一旦你使用了 OFFSET( ),所有 OFFSET( ) 单元格,加上 从 OFFSET() 开始计算的所有内容 每次更改工作表后。

为什么它很重要?INDEX()非易失性。您可以享受 OFFSET( ) 的所有灵活优点,而无需 一遍又一遍地耗时重新计算。


这是显示所用公式的屏幕截图:


• 单元格中使用的公式 G3

=MIN(INDEX(B:D,MATCH(F3,A:A,0)+6,))

上面的公式引用了City并向下移动6行以获得所需的值。


• 但是如果您想让它更加动态,即如果您想更改温度标签。 (警告 - 根据要求更改函数 MIN() 或 MAX())

=MIN(INDEX(B:D,MATCH(F3,A:A,0)+MATCH(G2,A:A,0)-1,))

一个.Gif


© www.soinside.com 2019 - 2024. All rights reserved.