我需要根据A列(Product Brand
)和B列(Region
)的串联找到不同的Product
s(D列)。 C列包含Col A和Col B的串联。
问题是A列和B列的值可以重复,所以我不能使用= VLOOKUP来查找不同的Product Brand
。
我的输入如下: -
Region Product Concat Product Brand
R1 P3 R1P3 PB1
R2 P2 R2P2 PB1
R3 P3 R3P3 PB1
R4 P4 R4P4 PB1
R5 P5 R5P5 PB1
R1 P1 R1P1 PB2
R1 P1 R1P1 PB3
R1 P2 R1P2 PB4
R1 P1 R1P1 PB5
R1 P1 R1P1 PB6
R1 P1 R1P1 PB7
R2 P1 R2P1 PB2
如果我选择区域1(R1)和产品P1(在另一个应用程序中),我应该能够在不同的单元格中显示具有该组合的所有产品品牌。我的结果集应该看起来像(比如Cols E& F):
R1P1 PB2
R1P1 PB3
R1P1 PB4
R1P1 PB5
R1P1 PB6
R1P1 PB7
我需要一个纯Excel公式解决方案,没有枢轴,没有VB,也没有其他过滤器选项。
任何帮助都会非常感激。
答案 0 :(得分:0)
使用数组公式得到解决方案:
假设我们要使用A1:D13
中的示例数据。
选择E1:E13
并在公式栏中写下:
=IF(C1:C13=G1&H1,C1:C13,"")
按CTRL + SHIFT + ENTER。
同样,在F1:F13
写下这个:
=IF(C1:C13=G1&H1,D1:D13,"")
注意:显示的值取决于您的G1
和H1
输入
如果为空,则E1:F13
上会显示空白
如果您分别在G1
和H1
输入R1和P1,E1:F13
将显示所有R1P1及其对应的B(x)。
但是你们之间有空白。几乎就在那里。
现在,选择G2
并输入以下公式:
=INDEX(E$2:E$13, MATCH(LARGE(COUNTIF(E$2:E$13, "<"&E$2:E$13), ROW(1:1)), COUNTIF(E$2:E$13, "<"&E$2:E$13), 0))
再次输入数组公式(CTRL + SHIFT + ENTER)
拖动到G13
。
同样,在H2
中写下这个公式:
=INDEX(F$2:F$11, MATCH(LARGE(COUNTIF(F$2:F$11, "<"&F$2:F$11), ROW(1:1)), COUNTIF(F$2:F$11, "<"&F$2:F$11), 0))
再次输入数组公式(CTRL + SHIFT + ENTER)
拖动到H13
。
现在你可以看到R1P1和所有B(x)之间没有空白。
这是基于您可能想要阅读的article。
答案 1 :(得分:0)
假设布局如下:
然后在F1中复制到适合:
=IFERROR(INDEX($D$1:$D$14,SMALL(IF($C$1:$C$14=E$1,ROW($D$1:$D$14),9.99E+207),ROW())),"")
(使用 Ctrl + Shift + Enter 输入)并在E2中复制以适应:
=IF(F2<>"",E1,"")
如果您在E1中输入Concat
值,我认为是否符合您的要求,但您可能希望扩展行引用。