如何在合并单元格使用公式计算装车时间


提问

今晚在学员群里看到一个很有挑战性的问题图片
图片

大概的数据案例如下
在这里插入图片描述


解答

第一想法是使用INDIRECT函数,例如第一个合并单元格,可以用下面得出答案

=INDIRECT("C7")-INDIRECT("B2")

如果对INDIRECT函数不太了解,看一下我之前写的3篇

第一篇:INDIRET函数导言
第二篇:INDIRECT函数的应用之跨表引用
第三篇:间接引用INDIRECT

据此反推 我们要得到每一个合并单元格的开始行行号以及结束行行号


首先我们用ROW函数列出行号

=ROW()

在这里插入图片描述

接下来如何获得每个单元格最开始的行号(例如2)和最末尾的行号(例如7)呢,这需要根据合并单元格数量进行分组


接下来用COUNTA函数分组

合并单元格的实质是什么?就是把内容(公式,数值等)放在合并单元格的左上角,其他单元格都变成空值

根据这个实质,我们可以对单元格进行统计分组,所以有了辅助列2,需要巧妙的用COUNTA函数
在这里插入图片描述
因为合并单元格之间都是空,所以会自动统计合并单元格数量

这里有个小技巧:注意最开始的单元格是固定的,这样下拉会使范围越来越大


用INDEX和MATCH求开始行和结束行

好了,我们根据这两列可以求到每个合并单元格最开始的行号和列号了

最开始的行号=第一个合并单元格分组号
最末尾的行号=第一个合并单元格分组号+组员数-1

在这里插入图片描述

使用MATCH函数找到第一个分组号,返回对应的辅助列1的内容,就是合并单元格最开始的行号

在这里插入图片描述

在第一个思路的基础上,加上分组组员数量,减1,即得到末尾行号


用INDIRECT出结果 TEXT美化

回到最开始的思路

=INDIRECT("C7")-INDIRECT("B2")

我们有了7和2,所以可以直接套了.但是得出来是一串数字,所以需要用TEXT函数美化一下
在这里插入图片描述

得出来还不够啊,我们还得处理下格式,变成装车时间(K列)一样的

简单,格式刷一键刷.


如果你担心合并单元格的提示,那都是多余的.看看这篇就会懂的

你眼所见,并不一定是真的

在这里插入图片描述

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

但老师

要是看起来爽 求打赏一耳光

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值