0 | 一个 | 乙 | 碳 | 德 | 埃 | F | 格 | 赫 | 我 | J | 钾 | 大号 |
---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | 品牌A | 产品 01 | 600 | 品牌A | 产品 01 | 370 | 品牌C | |||||
2 | 品牌A | 产品 02 | 100 | 品牌C | 产品 02 | 650 | ||||||
3 | 品牌A | 产品 02 | 300 | 品牌C | 产品 01 | 390 | 产品 02 | 200 | 产品 02 | 650 | ||
4 | 品牌B | 产品 01 | 400 | 产品 02 | 800 | 产品 01 | 390 | |||||
5 | 品牌B | 产品 03 | 500 | 产品 04 | 900 | |||||||
6 | 品牌C | 产品 02 | 200 | 产品 01 | 700 | |||||||
7 | 品牌C | 产品 02 | 800 | |||||||||
8 | 品牌C | 产品 04 | 900 | |||||||||
9 | 品牌C | 产品 01 | 700 | 产品 02 | 350 | |||||||
10 | 品牌D | 产品 03 | 250 | 产品 04 | 900 | |||||||
11 | 品牌D | 产品 03 | 460 | 产品 01 | 310 | |||||||
12 | 品牌D | 产品 04 | 690 |
在上表中我有两个不同的列表:
列表AColumn A:C
列表BColumn E:G
在Range I3:J6
和中我使用以下公式Range K3:L4
根据标准过滤这两个列表:Cell I1
Cell I3 =CHOOSECOLS(FILTER(A1:C12,A1:A12=I1),2,3)
Cell K3 =CHOOSECOLS(FILTER(E1:G12,E1:E12=I1),2,3)
一切运行良好。
现在我的目标是 中的列表Range I9:J11
。
该列表唯一地显示 中的筛选列表 A 中的所有产品,Range I3:J6
并从 中的筛选列表 B 中减去每个产品的相应值Range K3:L4
。
我知道我可以通过将UNIQUE
函数和函数应用于和SUMIF
中的现有结果来做到这一点。Range I3:J6
Range K3:L4
但是,我更希望有一个不需要Range I3:J6
和 的解决方案Range K3:L4
。相反,应该显示
中的列表而不显示“辅助范围”。Range I9:J11
您知道如何实现这个目标吗?
笔记:
List B
永远不会包含不存在的值List A
。无论是品牌还是产品。List B
每个品牌也可能包含多次相同的产品。它并不总是唯一的。例如,可能会出现Product 02
每次出现 x 次的情况Brand C
。
GROUPBY()
可能是更简单的方法。尝试-您也可以尝试-
此公式解决了以下任务:
这个想法是对第二个范围的值取反,然后将两个范围的值合并并乘以总和。
可以使用新的 GROUPBY 函数简化公式,但我仍然无法使用。
再次,只是有点令人费解:
公式为
I3
:E6 中的公式
第一部分基于您的试验。第二部分
SUMPRODUCT
对唯一名称的值进行求和Product
。