Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将其他工作表中的所有excel单元格值与引用(单元格值)同步_Excel_Excel Formula_Vba - Fatal编程技术网

将其他工作表中的所有excel单元格值与引用(单元格值)同步

将其他工作表中的所有excel单元格值与引用(单元格值)同步,excel,excel-formula,vba,Excel,Excel Formula,Vba,我在Excel中有一个完整的产品列表,该列表包含有关我们产品的信息(名称、SKU、类别、库存金额等),我有4个单独的Excel文件,其中包含SKU和库存金额(为什么有4个不同?:库存是从不同部门计算的) 我想要什么在最终文件中合并所有已计算的库存金额 假设有一个如下所示的结构 最终文件(Final stock count.xls)、stock-count1.xls文件、stock-count2.xls文件、stock-count3.xls文件、stock-count4.xls文件: A列=SKU

我在Excel中有一个完整的产品列表,该列表包含有关我们产品的信息(名称、SKU、类别、库存金额等),我有4个单独的Excel文件,其中包含SKU和库存金额(为什么有4个不同?:库存是从不同部门计算的)

我想要什么在最终文件中合并所有已计算的库存金额

假设有一个如下所示的结构

最终文件(Final stock count.xls)、stock-count1.xls文件、stock-count2.xls文件、stock-count3.xls文件、stock-count4.xls文件:

A列=SKU
B列=产品名称
C列=库存金额

注意:我可以将所有这些文件作为工作表放入一个文件中

我想知道,如果SKU值相同,Excel会查看每个列表的SKU单元格(stock-count1工作表的A2单元格)并填写最终列表的库存金额单元格(最终库存盘点工作表的C2单元格),以此类推。因为我不知道确切的单元格引用(单元格A2,C2,…)应该通过公式或其他方式完成


注意:我不熟悉VBA,但如果您简单地解释我应该在哪里编辑,我可以这样做。

当您需要按行查找表或范围中的内容时,请使用VLOOKUP(查找和引用函数之一)

您可以将VLOOKUP与嵌套的IFERROR函数结合起来,以便在所有三个表中顺序查找值

例如,以下公式:

=IFERROR(VLOOKUP(A2,$F$2:$H$5,3,FALSE),IFERROR(VLOOKUP(A2,$I$2:$K$5,3,FALSE),VLOOKUP(A2,$L$2:$N$5,3,FALSE)))
逻辑是这样的:

  • VLOOKUP值A2在F2:H5范围内(它将自动在第一列中查找以获得F-something)

  • VLOOKUP为该查找返回第三列的值(H-something),然后

  • 如果返回错误(未找到值),请转到下一个查找:表I-K

  • 您的公式如下所示,三个范围替换为外部工作表范围

    =IFERROR(VLOOKUP(A2,[first range],3,FALSE),IFERROR(VLOOKUP(A2,[second range],3,FALSE),VLOOKUP(A2,[third range],3,FALSE)))
    

    有关VLOOKUP的更多信息,请参阅。

    这里不需要将繁琐的
    VLOOKUP
    嵌入
    IFERROR
    语句,因为
    SUMIF
    将忽略任何不包含SKU的工作表。(它还具有添加任何可能在多张纸中的库存的优势——如果是这样的话)

    如果您输入最后一张工作表的
    C1
    ,并向下拖动,这将起作用

    =SUMIF(stock-count1!A:A,A2,stock-count1!C:C)+SUMIF(stock-count2!A:A,A2,stock-count2!C:C)+SUMIF(stock-count3!A:A,A2,stock-count3!C:C)
    
    您可以根据需要继续为所有工作表添加
    SUMIF
    语句

    其他信息

    如果您有很多很多工作表,您可以将工作表名称放在最后一张工作表的第1行(例如,从E列开始),然后将此公式拖动到各列(并向下拖动每个SKU的行),以获得每个工作表的SKU计数,然后在C列中编写一个简单的
    SUM
    公式以获得每个SKU的总数

    =SUMIF(INDIRECT(E$1&"!A:A"),A2,INDIRECT(E$1&"!C:C"))
    

    什么是refecrance???@iDevlop拼写错误:reference