分享

用Indirect函数批量提取多表固定位置数据

 黄晓东高考志愿 2019-03-11

间接引用函数INDIRECT在《4个步骤用Excel制作二级联动下拉列表》提到过,用于数据验证来制作二级下拉列表。使用INDIRECT函数还可引用指定单元格内容,引用区域可以是指定工作表或工作簿中的内容。

常常用于总部对各分支机构数据汇总,也可以用于财务部门提取多个同格式财务表格的数据。

我们先来看下直接引用和间接引用的区别。

A5和A6单元格都可以获取A1单元格中的“OFFICE职场训练营”,A5采取的直接引用的方式,A6采取间接引用的方式,相当于引用C1单元格内的文本地址对应的单元格内容。

有读者可能会问,间接引用有什么用?其实,正是INDIRECT函数中引用文本的灵活组合,带来引用地址的变化。比如,INDIRECT函数可以实现提取多表同位置的数据。下图中有3张销售工作表,分别是1-3月份数据,结构完全相同数据不同。还有一张汇总表,希望提取3张销售表对应的B11单元格的数据。

先来看下INDIRECT函数跨工作表引用的语法结构:

· INDIRECT(“工作表名!单元格区域”,引用样式参数)

如果工作表名为汉字,工作表名前后可以加上一对单引号,也可以不加。但是数字和一些特殊字符时,必须加单引号,否则不能得到正确结果。建议在工作表命名时尽量不要有空格和特殊符号。

引用样式分2种

  • A1引用样式

  • R1C1引用样式

怎样表示D9单元格?

  • A1引用样式:直接就是用D9表示

  • R1C1引用样式:D9单元格是行号是9,列号是4,Row是行的意思,Column是列的意思,Row9Column4,我们保留第1个字母和数字,得到R9C4,而这个R9C4就是D9单元格的R1C1的表示。

    引用样式参数不填写,默认是A1引用样式。

在汇总表的B2单元格中输入公式:

=INDIRECT(A2&'!B11')

将公式向下填充即可,可以根据A列单元格内容获取对应月份工作表的B11单元格的数据。

INDIRECT函数同样可以实现跨文件引用,语法结构如下:

· INDIRECT('[工作簿名.xlsx]工作表名!单元格地址',引用样式参数)

比如,有1月.xlsx2月.xlsx和3月.xlsx三个月份的数据文件,均含有工作表“销售表”,在第一季度数据.xlsx文件中收集三个文件销售表中B11单元格数据。

可以参考下方动图:

如果INDIRECT函数对另一个工作簿引用,要求那个工作簿必须被打开。如果源工作簿没有打开,函数 INDIRECT 返回错误值 #REF!。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多