【问题标题】:An Excel formula for number of merged cells?合并单元格数量的Excel公式?
【发布时间】:2014-08-26 23:14:07
【问题描述】:

Microsoft Excel 中是否有一个公式可以引用单元格作为参数并返回合并为一个的单元格的数量?例如,如果我合并了 3 个单元格,则公式为该单元格返回 3;如果我合并 2 × 4 个单元格区域,公式返回 8,依此类推……

【问题讨论】:

    标签: excel excel-formula


    【解决方案1】:

    考虑一下这个小UDF(用户定义函数):

    Public Function MergeSize(r As Range) As Long
        MergeSize = r(1).MergeArea.Cells.Count
    End Function
    

    如果 UDF 返回 1, 单元格独立!

    用户定义函数 (UDF) 非常易于安装和使用:

    1. ALT-F11 调出 VBE 窗口
    2. ALT-I ALT-M 打开一个新模块
    3. 粘贴内容并关闭 VBE 窗口

    如果您保存工作簿,UDF 将与它一起保存。 如果您使用的是 2003 年以后的 Excel 版本,则必须保存 文件为 .xlsm 而不是 .xlsx

    要删除 UDF:

    1. 如上所示打开 VBE 窗口
    2. 清除代码
    3. 关闭 VBE 窗口

    要使用 Excel 中的 UDF:

    =合并大小(A1)

    要了解有关宏的更多信息,请参阅:

    http://www.mvps.org/dmcritchie/excel/getstarted.htm

    http://msdn.microsoft.com/en-us/library/ee814735(v=office.14).aspx

    关于 UDF 的细节:

    http://www.cpearson.com/excel/WritingFunctionsInVBA.aspx

    必须启用宏才能正常工作!

    【讨论】:

      【解决方案2】:

      Excel 没有内置这样的功能,但编写一个很容易。

      Function mergedcells(rng As Range) As Integer
          mergedcells = rng.MergeArea.Cells.Count
      End Function
      

      【讨论】:

        【解决方案3】:

        如果您在左侧(或下方)的列中有数据,则使用偏移函数可能会有所帮助,此公式计算距合并单元格一定距离的填充单元格的数量。

        试试下面的 =COUNTA(OFFSET('[合并单元格范围],0,-1))

        -1 将计数向左移动一列 如果有数据低于结尾将是 ,1,0)

        如果周围只有空白单元格,请尝试公式

        =COUNTBLANK(OFFSET('[合并单元格范围],0,-1))

        如果混合了空单元格和填充单元格,则将公式一起添加

        【讨论】:

        • 德里克,你的评论没那么有用。我是新手,并试图提供好的建议。也许如果你能帮助展示什么以及如何改进它,也许我可以编辑并且可能更漂亮。但是像您这样的评论并没有提供任何指导或明确性
        • 它被标记为低质量。我不知道该告诉你什么。
        • 你的名字是发表评论的人“你能编辑这个以更好地格式化吗?”
        猜你喜欢
        • 2015-05-08
        • 2015-10-12
        • 2022-08-19
        • 1970-01-01
        • 2019-03-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-05-10
        相关资源
        最近更新 更多