0

我需要根据 A 列 ( ) 和 BProduct Brand列 ( ) 的串联找到不同的 s (D列)。C 列包含 Col A 和 Col B 的串联。RegionProduct

问题是 A 列和 B 列中的值可以重复,所以我不能使用 =VLOOKUP 来查找不同Product Brand的 s。

我的输入如下所示:-

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,也没有其他过滤器选项。

任何帮助将非常感激。

4

2 回答 2

0

假设布局如下:

SO19675938 示例

然后在 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++输入ShiftEnter并在 E2 中并复制下来以适应:

=IF(F2<>"",E1,"")  

如果您在 E1 中输入您的值,我认为是否符合您的要求Concat,尽管您可能希望扩展行引用。

于 2013-10-30T14:56:11.310 回答
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
如果分别在G1and中输入 R1 和 P1,将显示所有 R1P1 及其对应的 B(x)。 但是您之间有空白。差不多好了。H1E1:F13

现在,选择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) 之间没有空白。
这是基于您可能想要阅读的这篇文章。

于 2013-10-30T09:46:05.310 回答