合并单元格数量的Excel公式?

时间:2014-08-26 23:14:08

标签: excel excel-formula

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

3 个答案:

答案 0 :(得分:4)

考虑这个微小的 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窗口
  4. 如果保存工作簿,UDF将随之保存。 如果您在2003年之后使用的是Excel版本,则必须保存 该文件为 .xlsm 而不是 .xlsx

    删除UDF:

    1. 按上述方式调出VBE窗口
    2. 清除代码
    3. 关闭VBE窗口
    4. 从Excel使用UDF:

      = MergeSize(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

      必须启用宏才能使其生效!

答案 1 :(得分:1)

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

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

答案 2 :(得分:-1)

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

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

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

如果周围只有空白单元格,那么试试公式

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

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