【问题标题】:compare multiple columns to multiple columns 2 sheets and return different columns if data matches将多列与多列 2 表进行比较,如果数据匹配,则返回不同的列
【发布时间】:2019-03-14 03:35:19
【问题描述】:

我有 2 张 Excel 表格。一个包含客户信息、调度区域和销售,另一个包含客户信息和地理编码信息(长/纬度)。我想做的是将 Sheet2 的 CustomerID、LocationID、CustomerName 列与 Sheet1 的同名列进行比较,如果它们匹配,则将经度、纬度列中的数据从 Sheet2 移动到 Sheet1 上的相应列。我需要上传到地图系统的所有信息。我不是 Excel 大师,下周开始更高级的课程,我一直在玩 vLookups,但从来没有能够让它为 thisenter image description here 工作。我应该使用别的东西吗?

在下面的示例中,第一个应该匹配并拉入 Sheet1,第二个不应该。我们有大约 7,000 条记录要解析。

表 1

CustomerID LocationID CustomerName Longitude Latitude Sales$ Dispatch 1234 1 史密斯 125 DFW

4567 1 琼斯 450 DFW

表 2

CustomerID LocationID CustomerName 经度 纬度 地址 城市

1234 1 史密斯 25.xxx -97.xxx 1234 主达拉斯

4567 2 琼斯 25.xxx -97.xxx 452 通讯布达

【问题讨论】:

  • 客户 ID 是否始终唯一?您不能有两个相同的客户 ID,对吗?另外,您可以edit 回答您对VLOOKUP 公式的尝试吗?如果我们了解您自己的做法,我们可能会很快为您解决问题。
  • 使用IndexMatch

标签: excel excel-formula vlookup


【解决方案1】:

这是一个复杂的查找,需要一段时间来计算 14K(7K 的纬度和经度)单元格的数据。

根据您提供的图像,将其放入 Sheet1!D2 中,然后向右拖动并向下填充。

=IFERROR(INDEX(Sheet2!D:D, AGGREGATE(15, 7, ROW($1:$9999)/((Sheet2!$A:$A=$A2)*(Sheet2!$B:$B=$B2)*(Sheet2!$C:$C=$C2)), 1)), "")

您也可以尝试使用 SUMIFS。这仅在 Sheet2 中的三个值组合是唯一的情况下才有效,因此可能需要 COUNIFS,但没有它会更快。

=IF(COUNTIFS(Sheet2!$A:$A, $A2, Sheet2!$B:$B, $B2, Sheet2!$C:$C, $C2)=1, SUMIFS(Sheet2!D:D, Sheet2!$A:$A, $A2, Sheet2!$B:$B, $B2, Sheet2!$C:$C, $C2), "")

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-02
    • 1970-01-01
    相关资源
    最近更新 更多