在进行一些合并、汇总工作中excel如何实现跨表引用数据,经常碰到的一个问题是有一堆格式类似的不同工作表,希望能有一张汇总表显示其中的一些数据,又不想一个个手动link。而想用公式拉时又会发现工作表名无法作为变量随之移动。

这里介绍一个常用函数:(以下都不解释函数原理,反正写了也没人看^ ^)

*但这种方法Link的话无法通过追溯公式直接定位到对应单元格,推荐使用建立工作表的超链接替代

内容分为三块

1、的简单使用

2、配合/使用

3、其他配套事项

1、的简单使用

简单来说excel如何实现跨表引用数据,当使用跨工作表引用时,规律如下:=(“工作表名!单元格区域”)

*也可以跨工作簿,但一定要工作簿维持打开才可以保持引用有效,没啥用就不介绍了。跨工作簿大量&维持链接的引用至今没有很好的解决方法。

观察规律,发现括号里头尾各有一个双引号,如果这时非动态引用一个名为C.现金的工作表的B2单元格,公式如下:=("' C.现金'!B2") 即工作表名部分变为单引号+工作表名+单引号

则动态引用时工作表名部分如下:双引号+&单元格位置&+双引号,即如图所示:

如何跨表引用数据_跨表引用数据的函数_excel如何实现跨表引用数据

这时就达成了最简单的跨工作表动态引用的效果。(注意引用工作表名里不能有空格)

2、配合/使用

不过这是在知道我们要引用B2单元格的情况下,那如果这个单元格的位置在每个工作表里都不确定呢?比如我们需要引用每张工作表的合计数。该合计数在不同表中列数相同但行数不同。

这时有两种方法,函数与函数。这两个函数都是用来查找的,前者返回查找的单元格的位置,后者返回单元格的内容。

比如在两个工作表里有一行结果&数字,分别为第二行和第五行,对应值分别为5和10.

使用+引用则返回对应行号:=($A$1,(A3&"!A:A"),0)

如何跨表引用数据_跨表引用数据的函数_excel如何实现跨表引用数据

然后使用+引用行号以及工作表名与相应的列则返回结果对应的数据:=(("'"&$A3&"'!B:B"),$C3)

跨表引用数据的函数_excel如何实现跨表引用数据_如何跨表引用数据

注意:函数的最后一个变量写0就会查找第一个匹配的值。此时数列可以以任意顺序排列。

如果使用函数则公式如下:=(1,0/((A3&"!A:A")=$A$1),(A3&"!B:B"))

跨表引用数据的函数_如何跨表引用数据_excel如何实现跨表引用数据

原理就不解释了,这时候可以避开函数对应列必须升序排列的缺陷并且直接得到结果,但这仅适用该列只有一个“结果”的情况。当存在多个“结果”时,由于使用二分法查找,故不会像一样返回第一个匹配的值。

此时,就可以根据你的需求,随心所欲地获取你想要的单元格的数据了,包括可以实现引用倒数几行等等。

3、其他配套事项

所以我一般碰到一个需要1、合并多张工作簿中的工作表-2、重命名工作表-3、做一张汇总表 的时候一般步骤如下:

1、利用VBA(网上有很多代码or插件)把多个工作簿里的工作表合并到一个工作簿里

2、利用VBA获取现有的工作表名

3、这样会在A列按顺序列示现有工作表名,在旁边写上重命名成什么

4、利用VBA重命名工作表

5、按照上述关于的指引增加汇总工作表

6、增加工作表超链接:=("#'"&A3&"'!A1",A3)

excel如何实现跨表引用数据_跨表引用数据的函数_如何跨表引用数据

以上就是我个人对于这类汇总工作常见需求的应对方法,如果有更方便的欢迎讨论。此外,其实网上也有很多插件汇总了各种批量合并批量改名等等功能,我自己也装了。不过由于付费、安全等等因素,有时候不一定适用所有人,VBA+函数则是微软默认功能,不会存在突然用不了了的问题。

以上函数由于展开来讲内容太长了,其实能够复制然后对应着自己的需求改下公式就行了。

最后之前有个小伙伴后台问关于 合并重复的问题,因为过了48小时就没法再回复了excel如何实现跨表引用数据,就直接在这里回复:

我不清楚你用的是2013还是2016版本,根据我2013的经验来说,如果是从文件夹合并,这时会自动进行如你发的那个专栏文章所说的删除其他列并拓展,比如此时我从文件夹加载一堆表,选择合并和编辑,在尚未进行任何其他操作的情况下,左侧默认选择其他查询:

excel如何实现跨表引用数据_跨表引用数据的函数_如何跨表引用数据

右侧显示如下:

跨表引用数据的函数_如何跨表引用数据_excel如何实现跨表引用数据

不用进行任何其他操作,自动就是把几个工作表按顺序拼起来的样子了。我不确定你说的问题是由于版本不同造成的还是其他原因。

excel如何实现跨表引用数据_如何跨表引用数据_跨表引用数据的函数

在看点一下 大家都知道