excel跨表格引用数据 如何引用另一个表的内容和数据


在我们处理员工工资数据时,往往需要将每个月的工资情况整合到一张总表中。每个月的工资表格是分开的,并且每张表中的员工姓名排列顺序各不相同。举个例子,1月的工资表格可能是这样排列的:吕布、小乔、大乔,而2月的工资表格则是大乔、吕布、小乔、程咬金,并且每个月的数据顺序都不尽相同。

这时候,如何高效地从各个工作表中提取每位员工的工资数据,并且汇总到总表中呢?一种常规的方法是使用VLOOKUP函数,但这样每个单元格需要手动修改公式来指向不同的月份,这显得十分繁琐。比如在B2单元格中,你需要输入如下公式来查找1月的数据:

=VLOOKUP(B$1, '1月'!$A:$C, 3, 0)

然后,你再向右拖动公式,接着逐月修改公式中的月份为2月、3月,直到覆盖每个需要的月份。这种方法效率较低,尤其是当涉及到多个工作表时,手动更改公式不仅浪费时间,还容易出错。

今天我将教大家如何使用VLOOKUP结合INDIRECT函数来快速自动化这个过程,从而只需使用一个公式就能完成数据汇总。我们来了解一下INDIRECT函数的基本用法。

假设你在D3单元格使用了如下公式:

=INDIRECT(A2)

A2单元格的内容是“B4”,因此INDIRECT函数会返回B4单元格的内容。如果A2中填的是“B4”,那么D3的值就等于B4单元格的内容。

如果你将公式改成:

=INDIRECT("A2")

这时,INDIRECT函数会直接返回A2单元格的值,也就是说,D3的结果会是A2单元格的值——"B4"。

我们接下来要做的,就是利用INDIRECT函数动态地引用不同月份的数据范围。具体做法是,在VLOOKUP公式中,使用INDIRECT函数来替代原本的工作表名称,这样在向下填充公式时,工作表名称会自动随着行号变化,从而使得公式能够动态引用不同月份的数据。

例如,我们在总表中使用如下公式:

=VLOOKUP(C$1, INDIRECT($A2 & "!A:C"), 3, 0)

这里,$A2表示月份名称(如“1月”、“2月”等),INDIRECT函数将自动把“1月”替换为对应的工作表名称,这样在复制公式到下方时,公式中的月份会随之变化,从而实现自动汇总不同月份的数据。

你只需要将这个公式拖动填充到整个表格,VLOOKUP就能根据每个月的工作表自动提取数据,避免了手动修改公式的麻烦。通过这种方法,你就能快速、高效地完成每个月工资数据的汇总工作。

是不是觉得非常方便?赶快动手试试看吧。如果你需要源文件,可以私信我获取。