我有两个包含两列数据的工作表。工作表的 A 列是项目的名称,B 列是项目的价格。工作表 1 具有去年的价格,工作表 2 具有今年的价格。工作表 1 中的项目名称可能在工作表 2 中,也可能不在工作表 2 中。
我需要一个流程来匹配每个工作表中的名称,如果匹配,则确定该项目的价格差异。价格差异将出现在工作表 2 的 C 列中。
我考虑过使用带有 vlookup 函数的 if-then 函数,但是我需要检查工作表 1 和工作表 2 的所有列 A 中的所有记录是否匹配。我相信VB循环过程可能更有效。
我有两个包含两列数据的工作表。工作表的 A 列是项目的名称,B 列是项目的价格。工作表 1 具有去年的价格,工作表 2 具有今年的价格。工作表 1 中的项目名称可能在工作表 2 中,也可能不在工作表 2 中。
我需要一个流程来匹配每个工作表中的名称,如果匹配,则确定该项目的价格差异。价格差异将出现在工作表 2 的 C 列中。
我考虑过使用带有 vlookup 函数的 if-then 函数,但是我需要检查工作表 1 和工作表 2 的所有列 A 中的所有记录是否匹配。我相信VB循环过程可能更有效。
由于在我看来,您可能只需要一次(或一年一次)效率似乎不是很重要,因此公式可能会起作用。
假设 Row1 中的标签(分别在 Sheet1Item_Name 和Sheet2 中) ,则以下公式(复制下来以适应)应指示不匹配的位置(或者,如果存在,则相对于去年的价格变化:Price_OItem_NamePrice_NDiff#N/A
在 Sheet1 C2 中:=IF(MATCH(A2,Sheet2!A:A,0)>0,"")
在 Sheet2 C2 中:=B2-VLOOKUP(A2,Sheet1!A:B,2,FALSE)
或者,数据透视表可能会提供更好的概览,并结合:
在 Sheet2 H5 中:(=IF(OR(ISBLANK(F5),ISBLANK(G5)),"No Match",G5-F5)复制下来以适应)。
=$E$3, Finish。 PriceN表格中的Sort,Sort ZA。