需要从单独的工作表更新电子表格中的定价。Excel 2016

需要从单独的工作表更新电子表格中的定价。Excel 2016

我有 2 张。

一个“内容”包含产品代码 A11-A2912 和价格 E11-E2912,并且一些字段为空白。

新数据在单独的工作表“新价格数据”中,产品代码在 A1-A1409 中,价格在 B1-B1409 中。“新价格数据”中的产品代码按数字顺序排列,但不在“内容”中。

我需要比较产品代码并使用“新价格数据”中的数据更新“内容”中的价格数据

我希望这足够清楚

我知道这个问题已经在某处得到解答了,但我找不到任何可以解释我的问题的东西。

答案1

按照以下方法可以更新 E 列中的价格。

  1. 在内容表中插入新的 F 列。
  2. 将此公式放在 F11 中,并将 F 列向下填充至 E 列中的最后一个价格旁边(F11:F2912)。

=IFNA(VLOOKUP(A11,'New Price Data'!$A$1:$B$1409,2,FALSE),IF(E11=0,"",E11))

  1. 选择F11到数据末尾(F11:F2912),然后复制。
  2. 选择 E11。使用选择性粘贴复制值。
  3. 删除 F 列。

对于内容表中的每一行,VLOOKUP检查新价格数据表中的 A1:B1409。如果VLOOKUP从内容表中的 A 列找到产品代码,则返回新价格数据表中的匹配价格。如果VLOOKUP找不到产品,则返回#NA

IFNA查看来自的回报VLOOKUP。如果回报是不是 #NAIFNA返回VLOOKUP结果,否则返回 E 列的旧价格。IF保留空白字段,否则在 E 列为空白时 F 列将为零。

答案2

我可能错了,但我确信你必须使用 VBA,除非你想将“内容”表格式化为表格,然后按产品代码的顺序对其进行排序。然后,你可以让内容表的价格列中的值等于“新价格数据”表的价格列中的值。

是的,我错了。

相关内容