我需要一些以下要求的帮助:
原始数据
A B C
-------------------------------------
1 | Opp | Vendor | Amount |
|-------------|-------------|---------|
2 | 101 | Vendor1 | 100000 |
3 | 101 | Vendor2 | 5000 |
4 | 103 | Vendor1 | 30000 |
5 | 103 | Vendor2 | 5000 |
6 | 103 | Vendor3 | 50000 |
输出表
A B C D E
---------------------------------------------------------
1 | Opp | MainVendor | Amount1 | 2Vendor | Amount2 |
|-------------|-------------|---------|---------|---------|
2 | 101 | Vendor1 | 100000 | Vendor2 | 5000 |
3 | 103 | Vendor3 | 50000 | Vendor1 | 30000 |
我只能使用以下数组公式获得Amount1值:
{=MAX(IF(A:A=[@[Opp]];C:C))}
在C栏中。
我未能获得列 B , D &的值电子
答案 0 :(得分:0)
这是一个解决方案 - 如果人们可以重构这些公式,可能会有点乐观,听到建设性的批评。
要获取可以使用的Amount1
,Amount2
值:
=INDEX(LARGE($C$2:$C$10*--($A$2:$A$10=$A13),1),1)
其中:
$C$2:$C$10
是Amount
列--($A$2:$A$10=$A13)
- 意为{1;1;0;0;0;0;0;0;0} * {100000;5000;30000;5000;50000;45000;50000;40000;51000}
- 这会消除Amount
列中与行的Opp
不对应的值。LARGE
函数只选择第一大100000
和5000
,因为数组中的其他值现在为0
。2
,3
等提供给LARGE
函数LARGE
函数包含在INDEX
中以获取实际值,因为我相信它将其作为1元素数组返回(尽管公式检查器不清楚)< / LI>
样品:
要获得MainVendor
和Vendor2
值,您可以使用:
=INDEX($B$2:$B$10,INDEX(MATCH(LARGE($C$2:$C$10*--($A$2:$A$10=$A13),1),$C$2:$C$10*--($A$2:$A$10=$A13),0),1))
这是:
$B$2:$B$10
是Vendor
列MATCH
对AmountX
针对其自己的源数组MATCH
包装在另一个INDEX
中以获取实际值,再次,我认为该值将作为1元素数组返回样品:
我创建了另一组Opp
值,该公式适用于Amount
列中的一些重复值,但适用于不同的Opp
。