Excel高手必备的最为灵活实用的引用函数:Indirect

一、什么是Indirect函数?

Indirect函数称之为间接引用函数,间接引用当然是直接引用而言的。直接引用非常简单,我在任意一个单元格输入公式:“=a1”,那么将得到A1单元格的值。而间接引用则完全不同。如果我想通过间接引用函数返回a1单元格的值,我输入的公式为:=indirect(‘a1‘,1),这样才能得到A1的值。那么间接引用的优势是是什么呢?文章开头我已经说了答案了,那就是非常灵活,大家注意到indirect函数的参数加了引号,表示是文本。既然是文本,我们就可以灵活地编辑引用地址。这一点是直接引用做不到的。下面简单来看一下这个函数吧:

indirect函数

例如:在下图中,我们输入“=indirect(‘d1‘)”,公式将会直接计算d1单元格的值,也就是a1;而如果我们输入“=indirect(d1)”,公式将直接引用D1单元格的内容“a1”,然后再返回‘a1‘单元格的值,最后得到的结果就是“indirect函数”(简单来说计算了2次,第一次:由“=indirect(d1)”得到“=indirect(‘a1‘)”;第二次:由“=indirect(‘a1‘)”得到最终的值“indirect函数”)

indirect函数案例

indirect函数如此灵活,在工作中我们如何去应用,下面我们先来看一个简单案例。

二、利用Indirect函数跨表统计工资

如下图所示,如何汇总不同sheet中的工资总额汇总到下表中呢?2010年到2012年三个sheet中的表格结构完全一样,如下图中右下角表格所示。

源数据

很多同学可能会想到把这三张表全部复制粘贴到一个sheet里在进行统计,然而在sheet很多的情况下,通过这样的办法效率实在是太低。毫不夸张地说,你有可能花上一个小时都干不完的活,Excel高手一条公式一分钟都要不了就搞定了。下面我们来看看利用Indirect函数来做。

思路:首先得到每个sheet的B列,然后外层嵌套一个sum函数求和即可得到每年的汇总了。公式如下:

=SUM(INDIRECT(A12&‘!B:B‘))

向下拖拽公式,轻松完成个sheet的统计。

indirect函数,直接引用a12得到sheet的名称,使用“&”链接上“!b:b”,引用的是X表格B列的区域,外加一个sum函数即可汇总每年的销售总额。

三、利用indirect函数快速做数据表转置

还是先来看看咱们的需求,如何将左侧表格快速转化右侧表格的样式呢?方法有很多,包括利用咱们之前介绍过的index函数都可以轻松做出来,下面我们来介绍如何利用Indirect函数来做。

从左边的样式到右边的样式

思路:

1.要得到右侧的表格的样式,我希望将左侧表格的每一个单元格名称直接放在右侧表中,如下图所示:

首先我们想办法得到这样的引用样式

如何得到这样的样式呢?由于我们是由一列变成多行多列,因此列号不变,都是A,唯一变的是行号。我们要思考的是当我们向右填充公式时,行号能够从左向右依次增大(1,2,3,4……),向下填充公式时,行号能够以等差数列的方式增大(0,4,8,12)?针对第一个需求,我们可以用公式“=column(a1)”来做,针对第二个需求,我们可以用这样一个公式“=(row(a1)-1)*4”来实现,因此要得到上图中的地址,我们可以利用如下的公式得到:

=‘A‘&33+column(a1)+(row(a1)-1)*4

2.在我们得到单元格地址外层嵌套一个indirect函数即可得到咱们右侧图表的样式了。最终公式为:

=indirect(=‘A‘&33+column(a1)+(row(a1)-1)*4)

一条公式搞定

轻松搞定了一列变多列的数据转置了吧?

四、利用Indirect函数做多表数据条件汇总

如下图所示,如何快速统计:2010年到2012年这三年中,业绩超过150万的人数?

每个sheet的表格结构都和上图右下角的一致

思路:

首先利用indirect函数得到所有sheetB列的数据,下一步利用countif函数进行人数统计就可以了。

1.这个引用唯一的变量是表格(年份数字是变量)名称,我们可以利用函数row得到:=row(2010:2012)。因此我们的indirect函数可以这样写:

=indirect(row(2010:2012)&‘年!b:b‘)

2.接下来就简单了,在完成嵌套一个countif函数就可以完成条件计数的汇总了。最终公式如下:

{=COUNTIF(INDIRECT(ROW(2010:2012)&‘年!b:b‘),‘>150‘)}

原文地址:https://www.cnblogs.com/wanzhongjun/p/10837811.html

时间: 2024-08-24 14:44:29

Excel高手必备的最为灵活实用的引用函数:Indirect的相关文章

Excel查找引用函数之offset函数

在Excel中,offset函数是一个引用函数,表示引用某一个单元格或者区域.其也是我们日常做一些组合函数中的一种,需要熟练掌握. 1.offset函数的含义 以指定的(单元格或相连单元格区域的引用)为参照系,通过给定偏移量得到新的引用. 返回的引用可以是一个单元格也可以是一个区域(可以指定行列数). 注意事项 第一,如果行数和列数偏移量超出工作表边缘,函数 OFFSET 返回错误值 #REF!. 第二,如果省略 height 或 width,则假设其高度或宽度与 reference 相同. 第

10个不太为人所知的,但实用的PHP函数

10个不太为人所知的,但实用的PHP函数 您的评价:       较差  收藏该经验     阅读目录 php_check_syntax highlight_string show_source php_strip_whitespace __halt_compiler highlight_file ignore_user_abort str_word_count get_defined_vars get_browser PHP拥有非常丰富的内置函数,并且大多数我们是知道的.有许多功能,这些功能不

JAVA实现EXCEL公式专题(六)——查找引用函数

查找引用函数主要有match.lookup.vlookup.hlookup这4种,这几个常用的方法也就不解释啦,直接上干货: /** * 项目名称: * 文件说明: * 主要特点: EXCEL公式类型:查找公式 * 版本号:1.0 * 制作人:刘晨曦 * 创建时间:2013-12-3 **/ package EXCEL; import java.util.Calendar; import java.util.Date; /** * @author lcx * */ public class Se

玩转EXCEL系列-选择性粘贴几个实用技巧

EXCEL选择性粘贴在工作中使用也是比较频繁的,今天大飞老师给大家分享一些选择性粘贴实用技巧第一个技巧公式粘贴为值:在使用EXCEL工作中我们经常会碰到一种情况就是需要把某个单元格区域内容复制到别的地方使用,如下图所示我们把销售金额的单元格区域复制到别的地方时,就会变成0,  那么就需要使用EXCEL选择性粘贴--公式粘贴为值操作方法:CTRL+ALT+V,调出选择性粘贴对话框,选择数值,确认即可,如下图所示:第二个技巧:把单元格格式复制给其他单元格就向上图所示,当我们想把销售员会学网的销售金额

强烈推荐:简单但非常灵活实用的一款菜单

为庆祝新版QUI的问世,点击这里,特将之前开发的一款很实用菜单组件拿出来与大家分享.马上步入正题开始介绍: 大家之前都可能看过或用过很多菜单组件,有一些菜单组件可能做得很漂亮或者有很好的动画效果.但这种菜单一般都不通用,只能在特定的环境下使用. 我的想法是一个通用的菜单组件应该具备以下特点: 1.代码量很少,包括HTML代码.这样方便使用者使用CSS自定义菜单的风格 2.默认的外观很简洁但通过自定义调整可以展示出不同的样式 3.能够准确地响应鼠标移入动作并快速展开 4.能够以任何元素作为触发源

前端工程师必备的几个实用网站

一.配色类网站 http://colorhunt.co 这个网站给我们提供了很多的配色方案,我们直接使用就OK了.使用方法也很简单,鼠标移动到对应的颜色上,我们就可以看到颜色的十六进制码,复制这个颜色到工具里就可以使用了. https://webgradients.com/ 180种渐变方案供你选择,还可以直接复制CSS样式应用到网页中 https://color.adobe.com/zh/create/color-wheel 这个是Adobe公司出的,他提供了多种配色方案.我们点击圆盘中间的点

灵活实用require.js,让JS加载速度更流畅

当一个网页引入很多js文件,网页加载会变得很慢,并且js文件存在依赖性,有时候颠倒顺序就不能运行了,这很影响用户体验. require.js解决了异步加载,提高网页的加载,同时依赖顺序的js可以用数组排序. 第一部加载require.js放到目录的js子目录下: <script src="js/require.js"></script> 需要加一个参数 defer async="true" 表示这个文件需要异步加载 defer兼容IE版本 需

电脑高手必备————常用命令大全

系统管理及系统信息查看 explorer             系统配置编辑器 msinfo32 系统信息 taskmgr 任务管理器  tasklist 进程和服务  msconfig            系统配置实用程序  regedit 注册表  logoff 注销命令  dcomcnfg 打开组件服务 shutdown -s -t 10 10秒后自动关机  shutdown -a  取消关机  lusrmgr.msc 本地用户和组 net user 用户管理 compmgmt.msc

[转]Linux新手必备:8个实用的Linux终端命令

使用Linux终端不仅仅是只输入命令.学习这些基本的技巧,你就会逐渐掌握Bash shell,这个在大多数Linux发行版上默认使用的终端工具. 这篇文章面向新手,我相信大多数高级用户已经知道了所有的这些技巧,但是,你仍然可以看看,也许能学到你一直以来都忽略了的东西. Tab键自动补全 使用Tab键自动补全是基本的技巧.它能节省你很多时间,而且当你不确定一个文件名或者命令怎么拼写时,它也及其有用. 举个例子,比如在当前目录你有一个文件,文件名是“really long file nam”,你想删