具有多个值键

时间:2015-11-19 10:33:24

标签: excel

对于那些具有SQL背景的人,我试图用多种标准做一种“加入”。

这是我的工作表:

TABLE 1
┌──────┬─────────┬─────┐
│DOMAIN│BRAND    │VALUE│
├──────┼─────────┼─────┤
│SKI   │NIKE     │ 42  │
│SKI   │GOPRO    │ 94  │
│SKI   │RIP CURL │ 78  │
│SNOW  │NIKE     │ 38  │
│SURF  │BILLABONG│ 13  │
│SURF  │HURLEY   │ 99  │
│SNOW  │NIKE     │ 72  │
└──────┴─────────┴─────┘

TABLE 2
┌──────┬─────────┐
│DOMAIN│BRAND    │
├──────┼─────────┤
│SNOW  │NIKE     │
│SURF  │HURLEY   │
│SKI   │FOO      │
└──────┴─────────┘

我想突出显示Table2中Table2中的行 (这里应该突出显示第4行和第6行)。

我尝试了一个VLOOKUP,但它只需要一个键作为搜索参数。我还尝试了IF和MATCH的组合,但如果它的名字在表2中,它会突出显示品牌的每一行。

请问有什么提示吗?

[编辑]重复之前:我找到了这个主题:Excel - VLOOKUP with multiple criteria 但答案似乎不再起作用了。

1 个答案:

答案 0 :(得分:1)

正确的类似SQL的连接也会突出显示第7行。 例如,您可以使用SUMPRODUCT()来实现 将带有标题的第一个表格放在A1中,将第二个标题放在A12标题中,您可以执行以下操作:

=SUMPRODUCT(($A$13:$A$15 = A2) * 1,
            ($B$13:$B$15 = B2) * 1)

这会创建一个TRUE / FALSE数组,无论值是否等于表2中的值,并将它们乘以1,将布尔值转换为1/0。
然后它将1/0值的行相乘并对它们求和(可以用任意数量的列完成)。 假设表2中的值是唯一的,则表1中的每一行都会得到0或1 然后,您可以将它们与1进行比较,再次为条件格式设置获得布尔值。