当前位置: 代码迷 >> Office >> 请问怎么在vba中获得某列非空单元格总数
  详细解决方案

请问怎么在vba中获得某列非空单元格总数

热度:5967   发布时间:2013-02-26 00:00:00.0
请教如何在vba中获得某列非空单元格总数
多谢

------解决方案--------------------------------------------------------
'返回列中非空单元格的个数
Function UNEMPTYCOLUMN(rng)
Dim CCount As Integer
Application.Volatile
CCount = 0
Set rng = Intersect(rng.Parent.UsedRange, rng)
For Each cell In rng
If Not IsEmpty(cell) Then
CCount = CCount + 1
End If
Next
UNEMPTYCOLUMN = CCount
End Function
------解决方案--------------------------------------------------------
用内置的函数 COUNTA 应该是最高效的.

如果要用vba,在vba中直接用工作表函数,也比循环遍历效率高很多。

例如,下面的语句统计A列非空单元格数目,并将结果存放在B1单元格.

[B1] = WorksheetFunction.CountA([A:A])
  相关解决方案