1

我正在尝试根据以下公式查找单元格:

=vlookup(large($A$2:$A$10,1),$A$2:$C$10,3,false)最大值 =vlookup(large($A$2:$A$10,2),$A $2:$C$10,3,false)为第二高值

等等

我的问题是当公式的这一部分中有两个值相同时“(大($A$2:$A$10,2)但查找值不同。例如,当系列看起来像这样时 -

最多 10 个(汽车)、2 个(卡车)、2 个(厢式货车)、4 个(摩托车)

我返回 (Car), (Motorcycle), (Truck), (Truck) ... 而不是 (Car), (Motorcycle), (Truck), (Van)。

有谁知道使用公式或 vba 的解决方案?

谢谢!

4

2 回答 2

1

...我能想到的唯一方法(但我很想看看其他人的解决方案)是创建一个额外的“帮助列”。

因此,假设您的数据如下所示:

ColA          ColB             ColC           ColD     
10            [whatever]       Car            [Formula]
2             [whatever]       Truck          [Formula]
2             [whatever]       Van            [Formula]
4             [whatever]       Motorcycle     [Formula]

我会在 A 列和 B 列之间添加一个新列,并输入如下公式

在(新)B2 中:

=A2 + COUNTIF($A$2:A2,A2)/100

现在,当您向下拖动它时,它会将每个重复值增加 0.01,如下所示:

ColA        ColB         ColC             ColD           ColE     
10          10.01        [whatever]       Car            [Formula]
2           2.01         [whatever]       Truck          [Formula]
2           2.02         [whatever]       Van            [Formula]
4           4.01         [whatever]       Motorcycle     [Formula]

然后只需更新您的 Vlookup 公式以开始在 B 列而不是 A 列中查找。

希望这是有道理的...

于 2012-11-28T14:58:15.403 回答
0

您不能在 A 列上对表格进行降序排序吗?那么您的 Excel 公式可能是:

=vlookup($A2,$A2:$C$10,3,false) 
=vlookup($A3,$A3:$C$10,3,false)
=vlookup($A4,$A4:$C$10,3,false) 

实际上,比这更容易,您的公式可能只是:

=$C2
=$C3
于 2012-11-28T15:36:16.560 回答