本文作者:office教程网

在excel中用自定义函数获取合并单元格内的行数

office教程网 2023-05-08 23:32:26
后台-系统设置-扩展变量-手机广告位-内容正文顶部
摘要:

有时需要在Excel公式中用到合并单元格内所包含的行数或列数。例如下图为几类产品的数量统计,其中每种大类的产品都包含若干小类,需要在合并的单元格中得到各种小类的品种数及数量合计。由于合并单元格与各个小类单元格相对应,且各小类数量不等,因而有必要统计合并单元格内的行数。

用自定义函数可以方便地得到合并单元格内的行数或列数,方法如下。

按Alt F11,打开VBA编辑器,单击菜单“插入→模块”,在代码窗口中输入下列代码:

Function MergeRowsCount(Rng As Range) As Long
MergeRowsCount = Rng.MergeArea.Rows.Count
End Function

这样就定义了一个自定义函数MergeRowsCount,它可以获取某个合并单元格内所包含的行数。上图中,E5单元格为5行合并的单元格,下面的公式可以返回数值5:

=MergeRowsCount(E6)

YEARFRAC函数的使用

YEARFRAC函数返回start_date和end_date之间的天数占全年天数的百分比。使用YEARFRAC工作表函数可判别某一特定条件下全年效益或债务的比例。语法为: YEARFRAC(start_date,end_date,[basis]) ▲Start_date:必需。一个代表开始日期的日期。 ▲End

由于本例中E列或F列合并单元格内的行数不等,不能用拖动的方法填充公式,用下面的方法来批量输入公式:

选择E3:E12区域,在编辑栏中输入公式:

=COUNTA(OFFSET(D3,,,MergeRowsCount(E3)))

然后按Ctrl Enter即可将公式输入到E列各合并单元格,该公式返回合并单元格对应C列的小类产品品种统计。用同样的方法将下面的公式输入到F列,在各合并单元格中即可得到小类产品的数量合计:

=SUM(OFFSET(D3,,,MergeRowsCount(E3)))

要获取合并单元格内所包含的列数,可用下面的代码:

Function MergeColumnsCount(Rng As Range) As Long
MergeRowsCount = Rng.MergeArea.Columns.Count
End Function

excel中日期差函数DATEDIF使用教程

主要功能:计算返回两个日期参数的差值。 使用格式:=DATEDIF(date1,date2,"y")、=DATEDIF(date1,date2,"m")、=DATEDIF(date1,date2,"d") 参数说明:date1代表前面一个日期,date2代

后台-系统设置-扩展变量-手机广告位-内容正文底部
未经允许不得转载:

作者:office教程网,原文地址:在excel中用自定义函数获取合并单元格内的行数发布于2023-05-08 23:32:26
转载或复制请以超链接形式并注明出处 演示站

分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

留言与评论(共有 0 条评论)
   
验证码: