excel找到符合条件的最近单元格

时间:2017-03-01 14:09:27

标签: excel excel-formula excel-2007

我试图写一个公式来找到最接近某个标准的单元格,我有一个天线数据表,表示它在周围不同角度的性能,我想计算3dB波束宽度。 表格的格式如下:

+-------------------------------------+
| Angle    | Freq 1 | Freq 2 | Freq 3 |
+----------+--------+--------+--------+
| 0        | -2     | -4     | -6     |
| 10       | -2.5   | 4      | -7     |
| 20       | -2     | 5      | 0      |
| 30       | 1      | 6      | 2      |
| 40       | 4      | 7      | 2      |
| 50       | 5      | 6      | 3      |
| 60       | 4      | 6      | 2      |
| 70       | 2      | 5      | 2      |
| 80       | 0      | 4      | 2      |
| 90       | -2.5   | 2      | 1      |
| 100      | -2     | -4     | 0      |
| ...      | ...    | ...    | ...    |
| 350      | -2     | -4     | -6     |
| 360      | -2     | -4     | -6     |
+----------+--------+--------+--------+
| Max      | 5      | 7      | 3      |
| Ang. Max | 50     | 40     | 50     |
+----------+--------+--------+--------+

所以我目前使用max获取表格中的最高值,INDEX([angle range],MATCH([max cell],[freq column range],0))查找该最大值的相应角度。

我需要一个公式,它会找到最后一个单元格的相应角度,该最大单元格的最大值是3dB的最大值和最后一个单元格的角度,然后得到这些角度之间的差值以获得波束宽度,对于Freq 1:
上图:4 - 角40
下图:2 - 角70
波束宽度:70 - 40 = 30

freq 2:
上图:4 - 角10
下图:4 - 角80
波束宽度:80 - 10 = 70

频率3:
上图:0 - 角度20
下图:0 - 角度100
波束宽度:100 - 20 = 80

理想情况下,它会在最后一个带有3dB的单元格和第一个带有3dB的单元格之间进行线性插值,以便猜测这些步骤之间的角度......但这可能是一个太过分的桥梁。

我想避免使用宏来执行此操作,因为我希望在源数据更改时自动计算它,并且我需要能够将其发送到不允许运行宏的计算机。

我考虑过使用LOOKUP VLOOKUP但是这些需要匹配一个确切的值,除非设置了一个选项,但是当我尝试使用该选项集时,我没有得到任何匹配的值(max - 3)

不确定还有什么可以尝试。

1 个答案:

答案 0 :(得分:2)

对于Excel 2010及更高版本:

找到上面的内容:

=INDEX($A:$A,AGGREGATE(15,6,ROW(B$2:B$12)/(B$2:B$12>=MAX(B$2:B$12)-3),1))

要查找下方,请将15更改为14

=INDEX($A:$A,AGGREGATE(14,6,ROW(B$2:B$12)/(B$2:B$12>=MAX(B$2:B$12)-3),1))

然后拖动/复制以引用下一列。

enter image description here

对于2007及以下版本,您需要使用以下数组公式:

For Above:

=INDEX($A:$A,SMALL(IF(B$2:B$12>=MAX(B$2:B$12)-3,ROW(B$2:B$12)),1))

下方:

=INDEX($A:$A,LARGE(IF(B$2:B$12>=MAX(B$2:B$12)-3,ROW(B$2:B$12)),1))

作为数组公式,他们需要在退出编辑模式时使用Ctrl-Shift-Enter而不是Enter来确认。如果操作正确,那么Excel会将{}放在公式周围。

enter image description here