簡體   English   中英

合並單元格數量的Excel公式?

[英]An Excel formula for number of merged cells?

Microsoft Excel 中是否有公式將單元格的引用作為參數並返回合並為一個的單元格數? 例如,如果我合並了 3 個單元格,則該公式為該單元格返回 3; 如果我合並 2 × 4 單元格區域,則公式返回 8,依此類推……

考慮這個微小的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

必須啟用宏才能使其工作!

Excel 沒有內置這樣的函數,但編寫一個很容易。

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

如果左側(或下方)列中有數據,則使用偏移函數會有所幫助,此公式計算距合並單元格一定距離的填充單元格數。

試試下面的 =COUNTA(OFFSET('[merged cell range],0,-1))

如果數據低於結尾,則 -1 將計數向左移動一列,則為 ,1,0)

如果周圍只有空白單元格,請嘗試公式

=COUNTBLANK(OFFSET('[合並單元格范圍],0,-1))

如果混合了空單元格和填充單元格,則將公式添加在一起

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM