肥宅钓鱼网
当前位置: 首页 钓鱼百科

offset函数的讲解(四个典型用法帮到你)

时间:2023-07-11 作者: 小编 阅读量: 9 栏目名: 钓鱼百科

表亲们好啊,今天老祝和大家分享关于OFFSET函数的知识。接下来使用SUBTOTAL函数对OFFSET函数得到的多个引用区域进行处理,第一参数使用3,表示使用COUNTA函数的计算规则,即依次统计A2~A9这九个单元格区域中的不为空的单元格个数。如果单元格处于显示状态,则对这个单元格的统计结果为1,否则统计结果为0。最后使用SUMPRODUCT函数对乘积进行求和,这样就得到筛选后的商品总价了。

表亲们好啊,今天老祝和大家分享关于OFFSET函数的知识。

说起OFFSET函数,真的是像雾像雨又像风,从复杂的数据汇总、到数据透视表再到高级动态图表,都离不开OFFSET函数的默默付出。

通过OFFSET函数,可以生成数据区域的动态引用,这个引用再作为半成品,通过后续的处理加工,就可以为图表和透视表提供动态的数据源、为其他函数生成特定的引用了。

首先,咱们说说这个函数的作用,微软的帮助文件是这样描述的:

以指定的引用为参照系,通过给定偏移量返回新的引用。

瞧瞧,这么简单的几句话,让人家怎么能猜透你的心思嘛。

这个函数有5个参数:

第一个参数是基点

第二个参数是要偏移几行,正数向下,负数向上。

第三个参数是要偏移几列,正数向右,负数向左。

第四个参数是新引用几行。

第五个参数是新引用几列。

如果不使用第四个和第五个参数,新引用的区域就是和基点一样的大小。

如果使用下面这个公式:

=OFFSET(C3,4,2,4,3)

就是以C3为基点,向下偏移4行,向右偏移2列,新引用的行数是4行,新引用的列数是3列,最终得到对E7:G10单元格区域的引用。

当然,仅仅得到引用是没啥用处的,咱们的目的是把OFFSET函数得到的引用作为一个半成品,再通过其他方法进行再加工。

这么说还是有点抽象啊,再来一个形象一点的:

OFFSET函数就像是一个敌人的小分队,从据点(C3)出动,顺着大路向南走4里(C7)

拐弯儿再向东2里,这时候就到马家河子(E7)了

敌人队长说了,我要以马家河子(E7)这个地方开始,再占领一片地盘。

有多大呢?向南4里,向东3里。结果就是E7:G10单元格区域了。

简单认识了OFFSET函数,咱们再看看这个函数的一些典型应用。

1)行列转置

如下图,要将A2:D7单元格中多行多列的姓名,转换到一列中。

F2单元格公式为:

=OFFSET($A$2,(ROW(A1)-1)/4,MOD(ROW(A1)-1,4))&""

OFFSET函数的基点为A2。

向下偏移的行数为(ROW(A1)-1)/4,这部分公式下拉时,可以得到从0开始,按0.25递增的序号,即0,0.25,0.5,0.75,1,1.25,1.5……OFFSET函数对带有小数的参数自动向下取整,向下偏移的行数依次为0 0 0 0 1 1 1 1 2 2 2 2……也就是公式每下拉四行,就从数据源中向下偏移一行。

向右偏移的列数为MOD(ROW(A1)-1,4),这部分公式下拉时,可以得到0 1 2 3 0 1 2 3……的循环序列序列,也就是公式每下拉一个行,就从数据源向右偏移一列,下拉到第五行时,偏移的列数又会从0开始。

偏移行数和偏移列数二者结合,最终形成1 2 3 4 2 2 3 4 3 2 3 4 ……这样的偏移方式。

2)计算指定区间的销售额

如下图所示,要计算从1月份到指定月份的累计销售额。

F4单元格公式为:

=SUM(OFFSET(B2,0,0,MATCH(F2,A2:A13,0)))

MATCH(F2,A2:A13,0)部分,先使用MATCH函数计算出F2单元格中的月份在A2:A13中的位置,结果为9.

OFFSET函数以B2单元格为基点,向下偏移0行,向右偏移0列,以MATCH函数的计算结果作为新引用的行数,最终得到B2:B10单元格区域的引用,再使用SUM函数计算这个区域中的总和,得到从1月份到指定月份的销售总额。

3)计算最近7天的平均销量

如下图所示,A列和B列是销售流水记录,要计算出最近7天的平均销量。

F4单元格公式为:

=AVERAGE(OFFSET(B1,COUNT(B:B),0,-7))

先使用COUNT函数,统计出B列的数值个数。

OFFSET函数以B1为基点,以COUNT的结果作为向下偏移的行数,也就是B列有多少个数值,就向下偏移多少行。

这时候就相当于到了B列数值的最后一行,给定的偏移列数是0,新引用的行数是-7,得到从B列数值的最后一行开始,再向上7行这样一个动态的区域。

如果B列的数值增加了,COUNT函数的计数结果就增加了,OFFSET函数的行偏移参数也就随之变化。

就相当于一竿子捅到底,然后来个烧鸡大窝脖儿,向上引用7行,所以得到的始终是最后7行的引用。

最后使用AVERAGE函数计算出这个引用区域中的平均值。

4)计算筛选后的商品总价

如下图,是各食堂的采购记录,需要计算筛选后的商品总价。

G1单元格公式为:

=SUMPRODUCT(SUBTOTAL(3,OFFSET(A1,ROW(1:9),0))*C2:C10*D2:D10)

要计算筛选后的内容,首先需要判断单元格是不是处于显示状态。

先来看OFFSET(A1,ROW(1:9),0)部分,OFFSET函数以A1单元格为基点,向下偏移的行数是ROW(1:9)的计算结果,表示依次向下偏移1~9行,最终得到9个引用区域,每个单元格区域由一个单元格构成。

这里涉及到多维引用的知识点了,小伙伴们如果犯迷糊,可以先收藏一下。

接下来使用SUBTOTAL函数对OFFSET函数得到的多个引用区域进行处理,第一参数使用3,表示使用COUNTA函数的计算规则,即依次统计A2~A9这九个单元格区域中的不为空的单元格个数。

如果单元格处于显示状态,则对这个单元格的统计结果为1,否则统计结果为0。

这部分公式得到类似下面的效果:

{0;0;0;0;0;1;1;1;1}

再用SUBTOTAL函数的结果乘以C列的单价和D列的数量,如果单元格处于显示状态,则相当于1*数量*单价,否则相当于0*数量*单价。

最后使用SUMPRODUCT函数对乘积进行求和,这样就得到筛选后的商品总价了。

除了以上常规的用法,OFFSET函数还经常用于动态图表的制作,这些内容咱们以后继续分享。

好了,今天的内容就是这些吧,后半部分对于很多小伙伴来说可能有点难了,不过不用担心,咱们可以先收藏,然后慢慢消化,积少成多循序渐进。

祝各位小伙伴一天好心情!

图文制作:祝洪忠

    推荐阅读
  • 微信怎样恢复聊天设置方法(有什么方法)

    微信怎样恢复聊天设置方法微信自带修复:经常用微信的用户都知道,微信为了更好的服务客户,自带了微信小助手,就是帮助与反馈,里面能解决很多问题,其中就有聊天记录恢复。不过该方法主要恢复微信闪退,微信故障导致的记录丢失。首先登陆微信客户端,扫描二维码同步登陆微信,进入微信页面后,点击微信页面的左下角,可以看到意见反馈、备份与恢复及设置等内容。

  • 新鲜枣子吃多了会怎么样(新鲜枣子吃多了会怎么样吗)

    2、新鲜枣子中的糖分也是比较充足的,如果经常吃很多的话,会造成糖分在体内堆积,促进肥胖,而且对于孕妇来说,可能会增加孕期糖尿病的发病几率,对自己和胎儿都有很大的影响,因此建议这类人群更加不要大量吃枣子,新鲜枣子虽好吃,吃货们还是要禁住嘴哦,适量食用才是好方法。

  • 什么是衡量微机性能的一项重要指标(衡量微机的性能所采用的技术指标)

    衡量微机性能的重要指标有:1、运算速度运算速度是衡量计算机性能的一项重要指标。通常所说的计算机运算速度,是指每秒钟所能执行的指令条数。同一台计算机,执行不同的运算所需时间可能不同,因而对运算速度的描述常采用不同的方法。早期的微型计算机的字长一般是8位和16位。

  • 春江花月夜是什么乐器演奏的(春江花月夜演奏的乐器解说)

    春江花月夜是什么乐器演奏的《春江花月夜》的最早演奏乐器是琵琶,后来又采用古筝演奏。现在大多是民乐合奏。《春江花月夜》全曲由引子,主题乐段,主题的八次变奏及尾声构成,是一道独具特色的变奏曲。这种曲式由一个音乐主题乐段作基础,其它各段运用各种变奏的手法加以变化,丰富音乐的表现力,推进了音乐的发展。

  • 李白杜甫白居易各有多少诗(李白杜甫白居易)

    字:又称表字,男子20岁举行加冠礼时取字,女子15岁许嫁举行笄礼时取字,以表示对本人尊重或供朋友称呼。一般情况下,名与字是相互关联的,连在一起解读方能得知其内涵。李白是太白金星下凡的说法由此而来。他们原本是秦始皇时七十名博士官中的四位,后因不满秦始皇的焚书抗儒暴行而隐居于商山,所以有“商山四皓”之称。

  • 海棠花期多久(海棠花期有几个月?)

    以下内容大家不妨参考一二希望能帮到您!海棠花期多久海棠花通常在4-5月开花。但由于地区、种类不同,其开花期也有所变化。海棠花有春天开花的,有秋天开花的,甚至还有一年开三季花的。每种海棠花的花期都略有不同,西府海棠花期4月开花,垂丝海棠花期3-4月,贴梗海棠花期3-4月,木瓜海棠花期4月,四季海棠春秋两季开花。

  • 爸爸田园摄影作品(俺爹俺娘焦波亲情摄影展在费县儒林苑开幕)

    为进一步弘扬中华民族孝老爱亲的传统美德,传承沂蒙精神,不断推动优秀传统文化纵深发展,12月16日,中共费县县委宣传部、费县文化广电新闻出版局主办,费县文化馆、山东省裕文文化传播有限公司承办的《俺爹俺娘》焦波亲情摄影展在费县儒林苑开幕。费县县委常委、宣传部长段晓莉主持开幕式。山东裕文董事长王孝国参加开幕仪式并代表承办单位致辞。

  • 王者荣耀19个常用战术讲解(王者荣耀大神与菜鸟的细节体现)

    射手第一个红基本可以让,不需要的,因为就算你拿了蓝,只要对面不傻,跟你怼,基本红没太大作用。Tip2游戏技术简单,真正难的是队友之间的配合:王者其实每个英雄操作技术也就那样。Tip4让人头是一种利己行为:人头,一直是我们在一场比赛中喜欢炫耀的地方,人头越多也许在很多人看来就是越厉害。Tip5队友卖你有时也是应该的:卖队友一般人都认为是错误的做法,甚至很多人被卖之后都会有言语暴击相加于卖他的人。

  • 7座车卸了后排座位违法吗(7座车后排座位拆了怎么罚款)

    7座车拆座椅属于私自改装机动车结构,是违法行为,载客人数是根据车辆出厂合格证核定的,一经核定,是不能更改的。对车辆私自增加或减少座位都是非法改装。这种情况由公安机关交通管理部门责令恢复原状,并处警告或者五百元以下罚款。如果拆除后向登记机关申请变更登记后,不予处罚。

  • 黑枸杞是否有价值(黑枸杞比较好吗)

    然而,目前的《中国药典》中根本没有收录所谓的“黑枸杞”这种药材。其实检验证明,黑枸杞跟红枸杞,营养价值本身相差无几,至于宣称的含有大量花青素,抗氧化作用强。枸杞性平,味甘,无毒,长期食用具有补肾益精,养肝明目等功效。枸杞中含有大量的枸杞多糖、甜菜碱、胡萝卜素、叶黄素及钙钾镁硒等多种矿物质,长期食用可起到抗衰老、增强抵抗力、养肝等作用。