1

我有 2 张纸。表 1 的设置类似于:

Keyword  Domain  Rank
  A        Z      1
  B        Z      2
  C        Z      3
  D        Y      10
  E        Y      15
  B        Y      20

表 2 的设置如下:

Keyword  (Domain Z)  (Domain Y)
  A           1          -
  B           2          20
  C           3          -
  D           -          10

我试图有一个公式,将表 2 中的关键字与表 1 中的关键字进行比较,然后返回对应于正确域的排名(在表 2 中为该列指定)。我无法得到任何我用来评估的公式。到目前为止,我已经使用了 2 个公式:

=INDEX(Raw!$H$11:$H$322, MATCH(A3,IF(Raw!$D$11:$D$322=All!$B$2,Raw!$B$11:$B$322),0))

上面的公式在一定程度上有效。问题是它简单地为找到的关键字的第一个实例提取域,它并不总是与工作表 2 列中的域匹配。我尝试过的第二个公式:

=INDEX(Raw!$H$11:$H$322, MATCH(B3,MATCH($C$2,Raw!$D$11:$D$322,0)))
4

2 回答 2

2

要使值出现在工作表 2 表中,请使用以下公式:

=SUMPRODUCT(--($A$2:$A$7=E2),--($B$2:$B$7=$F$1),$C$2:$C$7)

在此处输入图像描述

这将返回0不匹配 - 您可以格式化单元格以显示 0 您想要的方式,或者您可以使用更长/更丑的:

=IF(SUMPRODUCT(--($A$2:$A$7=E2),--($B$2:$B$7=$G$1),$C$2:$C$7)<>0,SUMPRODUCT(--($A$2:$A$7=E2),--($B$2:$B$7=$G$1),$C$2:$C$7),"-")

要根据第二张表中的数据计算第一张表上的排名:

=VLOOKUP(A2,$F$2:$H$5,MATCH(B2,$G$1:$H$1,0)+1,FALSE)

出于示例目的,这只是将您的 sheet2 数据放在 F1:H5 中。 在此处输入图像描述

这会查找相应的关键字,然后使用 match 来选择正确的列。我将列命名为ZY,但如果您需要Domain包含,也可以这样做。请注意,这会导致错误,因为您的第二个表中没有E定义 - 是这样吗?如果是这样,可以按如下方式调整它以解决不匹配的情况(假设 Excel 2007):

=IFERROR(VLOOKUP(A6,$F$2:$H$5,MATCH(B6,$G$1:$H$1,0)+1,FALSE),"Rank Not Found")

在此处输入图像描述

于 2012-10-02T01:00:05.950 回答
0

您还可以将数据透视表与行中的关键字和列中的域名一起使用。看起来这样可以完成工作并且是一个更强大的解决方案。

于 2015-08-10T04:26:05.220 回答