【前言】在上篇文章中,我们了解了OFFSET函数的运算原理和各个参数的作用,并且我们也通过一些OFFSET的案例,了解了它的用途。那么本篇我们继续来看看,OFFSET函数在实际工作中所能起到的强大效果吧。

一、高阶应用的思路

(动态报表模板的原型)

我们使用Excel是为了快速地统计分析数据,快速地提取出我们需要的内容。现在假设以下两个场景:

场景一:领导安排了工作,统计某季度的销售数据,我们马上行动,用函数快速的制作报表;

场景二:领导安排了工作,因为每季度都需要统计销售数据,所以我们早就提前制作了模板,至于什么时候给出报表,就随我们的便了。切记,不要让“中层领导”知道你的工作效率很高。

两个场景,你会选择哪种处理方式呢?作者希望是第二个。

思路决定了我们制表的格局,这是一个简单的案例,当数据源被修改后,相对应的季度数据也会自动做出调整。在复杂的模版中并不是所有的位置都会使用OFFSET函数,但对于动态引用数据区域的需求,用OFFSET函数来处理是绝对不会错的。

二、典型用法举例

绝技4:制作动态下拉菜单

在数据建模的过程中,我们经常会使用到下拉菜单(或者是组合框控件)。为了确保下拉内容的唯一性,我们会使用INDEX+SMALL+IF+ROW的“万金油”函数来去重提取数列中的数据。还记得我们在上篇讲到的OFFSET函数替代INDEX函数的例子吗?所以说,如果OFFSET函数可以代替INDEX函数使用的话,那么OFFSET函数同样也可以实现“万金油”的过程。下面我们就一起来看看复杂的“下拉菜单”的制作过程。

步骤一:使用OFFSET函数去重提取唯一值的 “万金油”公式

这个公式比较长,列出如下:

D2单元格函数:

=IFERROR(OFFSET($A$1,SMALL(IF(ROW($A$2:$A$27)-1=MATCH($A$2:$A$27,$A$2:$A$27,0),ROW($1:$20),9^9),ROW(D1)),),"")

万金油公式不是我们今天要讲的主题,就不展开讲了。重要就是为了让大家知道OFFSET函数也是可以达到这样去重的效果。

步骤二:在名称管理器中使用OFFSET函数,建立数据源

我们可以用Ctrl+F3组合键,打开名称管理器窗口,然后新建名称,名称设置为“区域”,引用位置为“D2:D15”,如下图所示:

然后选择G1单元格,按Alt+D+L组合键可以打开数据验证设置框,在允许中选择“序列”,在来源中输入“=区域”,如下图所示:

点击确定按钮,那么我们G1单元格的下拉菜单就建立好了。但是问题也来了,我们会发现有好多的空选项,这不是我们需要的。

有的同学会说,名称管理器中选择D2:D5就可以了。是的,但是如果我们A列的区域中出现了新的数据,那下拉菜单中的数据可就少了,所以此时我们依然使用OFFSET函数来处理这个问题。

更改名称管理器中,“区域”的引用位置:

=OFFSET(动态下拉菜单!$D$1,1,,COUNTA(动态下拉菜单!$D$2:$D$15)-COUNTBLANK(动态下拉菜单!$D$2:$D$15),1)

因为我们D列的唯一值,是用公式得到的,里面的“空单元格”不是名义上的“空”,而是由公式得到的空,所以不能直接通过COUNTIF(D2:D15,"<>")的方式得到有值的单元格个数。因此我们先使用了COUNTBLANK函数(空值单元格计数),统计空值单元格的数量,再用COUNTA函数统计非空单元格的数量,最后二者相减就得到了有值单元格的个数。将得到的结果作为OFFSET函数的第四参数(新区域的扩展行数)使用,就实现了动态引用有效数据的效果。如下图所示:

如果A列中增加了新的区域名称,那么G1的下拉菜单也会增加新的选项,让我们来一起看一下效果,我相信这是你需要的。

绝技5:OFFSET函数在图表中的使用

上面的这张图表,相信大家都不陌生吧。参加工作的同学们都会有制作图表的经历,在上图中选择A1:B10区域,在工具栏——“插入”——柱形图,就完成了我们图例的内容。

如果我们删掉一行数据,那么柱形图中的系列图例就会少一个,可是如果增加一行数据的话,就需要更改图表数据源的范围,才能显示正确的图表。但总不能每次都更改呀,那就失去了我们使用Excel 高效快速的初衷。

此时,我们依然可以借鉴OFFSET函数来解决:

步骤一:使用OFFSET函数分别对“日期列”和“数量列”,制作自定义名称

名称管理器,我们上面有介绍,就不多说了。选中“日期列”,设置如下:

引用位置函数:

=OFFSET(图表系列!$A$1,1,0,COUNTA(图表系列!$A$2:$A$1000),1)

因为原数据中并不存在公式得到的空单元格,所以这里不需要使用COUNTBLANK函数,直接用COUNTA函数统计出非空单元格的个数,作为OFFSET函数的第四参数(新区域的行数)即可。这里的A2:A1000,表示一个绝对大的区域,保证新输入的内容在这个范围内。

选中“数量列”,同理制作出数量的自定义名称,如下:

步骤二:在图表区域使用名称

这是OFFSET动态图表的关键所在,添加名称的位置是很重要的。

在绘图区,选择任意一个柱形,在编辑栏中你可以看到图标的函数写法(是不是第一次知道图表也有函数)。我们就在这里修改引用的范围。

我们只需改动区域的部分。

图表系列!$A$2:$A$10

图表系列!$B$2:$B$10

用自定义名称替换这两个红色的部分即可,切不可以将“图表系列!$A$2:$A$10”整体替换!

替换后按回车,函数就会像上图这样显示,OFFSET.xlsx是我们的工作薄名称。效果如下:

其他的图表类型也是可以的,大家可以试着操作一下,加深印象。

excel统计函数:应用广泛的动态统计之王OFFSET 下篇相关推荐

  1. excel行转列_excel统计函数:应用广泛的动态统计之王OFFSET(上)

    编按:哈喽,大家好!今天是部落窝函数课堂的第6课,我们将认识人送外号"动态统计之王"的OFFSET函数!OFFSET函数是一个非常实用的函数,它在下拉菜单.动态图表.动态引用等操作 ...

  2. excel行列互换_excel统计函数:应用广泛的动态统计之王OFFSET(上)

    编按:哈喽,大家好!今天是部落窝函数课堂的第6课,我们将认识人送外号"动态统计之王"的OFFSET函数!OFFSET函数是一个非常实用的函数,它在下拉菜单.动态图表.动态引用等操作 ...

  3. 动态添加跨行表格_手把手教你制作Excel动态统计表格,主管看了都会竖起大拇指!-Office教程...

    教程领到手,学习不用愁!领 ↑↑↑ 还有朋友不知道知识兔吗?知识兔就是下载考试资料|软件|教程|素材的网站,建议去搜索引擎搜索知识兔!知识兔是课程网站吗?知识兔有什么课程?知识兔可以兔费领取下载课程, ...

  4. 计算机应用专业成绩汇总表,计算机应用基础第7章Excel综合应用1—成绩表统计与分析.ppt...

    计算机应用基础第7章Excel综合应用1-成绩表统计与分析 第7章 Excel综合应用1-成绩表统计与分析 计算机应用基础 主编:许晞 副主编:刘艳丽 曾煌兴 郑杰 秦高德 学习目标 熟练掌握统计函数 ...

  5. Excel统计函数COUNTIF()的常规用法介绍

    Excel统计函数COUNTIF()的常规用法介绍 COUNTIF函数常规用法一 基本简介作用  用来计算区域中满足给定条件的单元格的个数. 语法讲解 COUNTIF(range,criteria) ...

  6. easyui 动态设置单元格控件_比Excel还简单,实现动态报表原来只需要十分钟!

    做过报表的人,尤其是经常有报表需求的人,想必都会有这样一个困惑: 为什么同样是做报表,其他人的报表就能够得到领导的肯定,而自己的报表就会被老板丢掉一边? 这个问题其实很好回答,你想一想,如果你是老板, ...

  7. 利用Excel动态图表----------使用offset(),match()多种控件,实现筛选作图

    实现利用Excel进行可视化动态分析. 如果想要进行实操,可从网盘中提取数据: 链接:https://pan.baidu.com/s/1rV_Cfx7kZqQvB7PzMqYHYA  提取码:aykp ...

  8. EXCEL装逼指南之动态进度条(项目经理必备技能)

    EXCEL装逼指南之动态进度条(项目经理必备技能) 作为浪迹职场多年的混子(项目经理),是否常常对项目进度把控不利,汇报工作又含含糊糊让领导不知所以而经常惨遭领导羞辱,同事嘲笑? 那么如何做一份让领导 ...

  9. excel 统计函数笔记

    excel 统计函数笔记 函数:COUNTIF(数据区域,筛选条件) 函数:COUNTIFS(数据区域1,筛选条件1,数据区域2,筛选条件2,数据区域3,筛选条件1,-) 支持循环嵌套

最新文章

  1. 1.19 String、StringBuffer和StringBuilder类的区别
  2. xib和storyboard小谈,
  3. VTK:Rendering之FlatVersusGouraud
  4. phpcms 加载php文件,PHPCMS配置文件的读取
  5. ubuntu 16.04 安装 python2.7 以及 cv2, dist-package 和 site-package 的区别, import cv2 出问题解答
  6. endwith php,辅助函数 | 进阶系列 | Laravel 7 中文文档
  7. RabbitMQ消息队列:发布/订阅(Publish/Subscribe)
  8. 安装与配置Flutter开发环境
  9. flutter之从零开始搭建(一)之 BottomNavigationBar
  10. 微信小程序设置字体无效_UI设计微信小程序用了苹方字体,前端却说做不了怎么办?...
  11. 在Linux操作系统中,eclipse建立快捷方式
  12. 【毕业论文】word 一键删除批注
  13. Paper Reading - 基础系列 - 常用评价指标 ROC、PR、mAP
  14. (3)DispatcherServlet与初始化主线
  15. 16位流水线CPU设计(部分)
  16. CppCheck静态代码检查配置(命令行方式或在VS中使用)
  17. 对讲机外装蓝牙对讲适配器方案
  18. 信安、网安保研夏令营分享(同济,华师,东南、复旦、中科大、北航)
  19. 爬取豆瓣电影top250提取电影分类进行数据分析
  20. 高等数学 第八章 向量代数和空间解析几何

热门文章

  1. 三大链表之klist
  2. 注册中心对比CP/AP动态切换
  3. java xls 布局_从Excel到PowerPoint - 编号幻灯片自定义布局
  4. 前端页面显示图片的多种方法小结
  5. 学习ps软件有多难?新手怎样入门ps设计?
  6. 微软全球高级副总裁演讲有感
  7. 企业微信文件怎么打印?
  8. 为什么下搜酷狗输入法那么快?
  9. 海尔微型计算机机箱如何拆解,海尔t628拆机详解
  10. Winform+Access收银系统源码带使用手册【源码分享】