我如何 select Sheet 1 中 A 列和 B 列的值完全等于 Sheet 2 的 A 列和 B 列的所有实例?
How can I select all the instances in which the values of Columns A & B in Sheet 1 are exactly equal to Columns A & B of Sheet 2?
这个非常具体,但基本上我得到了两个数据转储(.xls 格式):一个来自旧系统,一个来自新系统。新系统的转储中有更多行,但我想删除旧系统转储中已经找到的行。
每个 sheet 包含大约 10 列,但其中只有 2 列实际上具有可能匹配的值。
所以我的问题可以概括为:我如何select Sheet 1(旧转储)中列 A 和 B 的值的所有实例完全等于 Sheet 2 的 A 列和 B 列(新转储)?
您可以在 sheet 1 和 sheet 2 中添加一个辅助列。并在其中放置一个连接列 A 和列 B 的公式,例如
=A1&B1
在下图中,K 列的公式组合了 A 列和 B 列的值。 L 列用于说明目的,向您显示 K 列中包含的公式。
旧sheet:
在 sheet2 中,您有辅助列 K 和列 L 中的附加公式,如下图所示。在这种情况下,M 列向您显示 L 列中的公式:
L 列的公式为:
=IF(ISNA(MATCH(K2,Old!K:K,0)),"Keep","Delete")
内部查看是否可以在旧数据转储的 K 列中找到新数据转储中的 K 列值,即 A 列和 B 列值是否匹配。
MATCH(K2,Old!K:K,0) 'This would be MATCH(K2,Sheet1!K:K,0) in your case
如果未找到匹配项,即在新列中找到特定列 A 和 B 组合,但在旧列中找不到,MATCH 公式将 return #N/A
.
L 列公式的外部使用 ISNA()
测试此错误
return错误为 True,否则为 False。
将此放在 L 列(在 sheet2 中)的 IF()
语句中,您有一个公式表示,如果找到匹配项 "Delete",如果未找到 "Keep".
然后您可以在 L 列中筛选出 "Delete" 的条目,然后将其删除。
这个非常具体,但基本上我得到了两个数据转储(.xls 格式):一个来自旧系统,一个来自新系统。新系统的转储中有更多行,但我想删除旧系统转储中已经找到的行。
每个 sheet 包含大约 10 列,但其中只有 2 列实际上具有可能匹配的值。
所以我的问题可以概括为:我如何select Sheet 1(旧转储)中列 A 和 B 的值的所有实例完全等于 Sheet 2 的 A 列和 B 列(新转储)?
您可以在 sheet 1 和 sheet 2 中添加一个辅助列。并在其中放置一个连接列 A 和列 B 的公式,例如
=A1&B1
在下图中,K 列的公式组合了 A 列和 B 列的值。 L 列用于说明目的,向您显示 K 列中包含的公式。
旧sheet:
在 sheet2 中,您有辅助列 K 和列 L 中的附加公式,如下图所示。在这种情况下,M 列向您显示 L 列中的公式:
L 列的公式为:
=IF(ISNA(MATCH(K2,Old!K:K,0)),"Keep","Delete")
内部查看是否可以在旧数据转储的 K 列中找到新数据转储中的 K 列值,即 A 列和 B 列值是否匹配。
MATCH(K2,Old!K:K,0) 'This would be MATCH(K2,Sheet1!K:K,0) in your case
如果未找到匹配项,即在新列中找到特定列 A 和 B 组合,但在旧列中找不到,MATCH 公式将 return #N/A
.
L 列公式的外部使用 ISNA()
测试此错误
return错误为 True,否则为 False。
将此放在 L 列(在 sheet2 中)的 IF()
语句中,您有一个公式表示,如果找到匹配项 "Delete",如果未找到 "Keep".
然后您可以在 L 列中筛选出 "Delete" 的条目,然后将其删除。