匹配excel中的列

时间:2016-03-25 01:04:52

标签: excel excel-vba excel-formula vba

长时间潜伏第一次发帖。我有关于匹配excel中的列的问题。我搜索了不同的方法,但我似乎无法找到符合我的需求和要求的东西。

我有两列。我需要检查并查看某些进程或值(列c)是否与主列表(列a)匹配。我为两列之间的匹配设置了规则,并在比较时突出显示主列表列中的匹配项并将其填充为绿色。

我遇到的问题是主列表包含重复项。所以两行将具有相同的数据。例如。 a1 = str123和a4 = str123。

使用Match命令时,它会将a(a1& a4)列中的两个单元格变为绿色,但即使匹配列仅包含一个数据实例(c5 = str123),也会发生这种情况。

我正在寻找一种方法来进行匹配,但是主列表只在有一个实例的情况下将单元格变为绿色,然后忽略检查另一个单元格的匹配时发生的匹配。

所以基本上我正在寻找一种方法来设置两个单元格之间的匹配,但是一旦找到一个匹配,就会在查看列表的其余部分时忽略它。

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

这可以通过使用两个匹配公式的条件格式来完成。我假设你在a列中有一组固定的主值,比如在单元格A2:A6中。我假设您有值来测试它们是否存在于C列中,例如在C2:C6中,其他列是空白的。在B列中,在B2..B6中输入数字1..5作为主值的索引。在D列中,在D2中输入公式=MATCH(C2,$A$2:$A$6,0)并向下复制。在E列中,在E2中输入公式=MATCH(B2,$D$2:$D$6,0)并向下复制。选择主范围A2:A6并选择条件格式,使用公式=ISNUMBER($E2)并格式化绿色填充或任何您想要的格式。通过这种组合,D列中的公式找到第一个匹配的主项目,并且col E中的公式测试以查看col B中的索引是否在col D中的匹配列表中。