如果在Excel中选择了一个或多个区域,用下面的VBA代码可以统计当前工作表所选区域中单元格(或行、列)的数量:

1. 统计选定区域中的单元格数量:

Sub CountCellsInSelection()
Dim CellsNum As Integer
CellsNum = Selection.Count
MsgBox "所选区域中的单元格数量为: " & CellsNum
End Sub

2.统计选定区域中所包含的行数,如果选择了多个区域,则统计行数之和。

Sub CountRowsInSelection()
Dim RowsNum As Integer
For i = 1 To Selection.Areas.Count
RowsNum = RowsNum + Selection.Areas(i).Rows.Count
Next i
MsgBox "所选区域中的行数为: " & RowsNum
End Sub

3.统计选定区域中所包含的列数,如果选择了多个区域,则统计列数之和。

Sub CountColumnsInSelection()
Dim ColumnsNum As Integer
For i = 1 To Selection.Areas.Count
ColumnsNum = ColumnsNum + Selection.Areas(i).Columns.Count
Next i
MsgBox "所选区域中的列数为: " & ColumnsNum
End Sub

4.统计选定区域中的非空单元格数量:

Sub CountNonBlankInSelection()
Dim NonBlankNum As Integer
NonBlankNum = Application.CountA(Selection)
MsgBox "所选区域中包含非空单元格有" & NonBlankNum & "个。"
End Sub

5.统计选定区域中有填充色的单元格数量:

Sub CountColorCellsInSelection()
Dim ColorCellsNum As Integer
Dim rCell As Range
For Each rCell In Selection
If rCell.Interior.ColorIndex > 0 Then
ColorCellsNum = ColorCellsNum + 1
End If
Next rCell
MsgBox "所选区域中填充了颜色的单元格有" & ColorCellsNum & "个。"
End Sub

6.统计选定区域中包含公式的单元格数量:

Sub CountFormulaInSelection()
Dim FormulaNum As Integer
Dim rCell As Range
For Each rCell In Selection
If rCell.HasFormula Or rCell.HasArray Then
FormulaNum = FormulaNum + 1
End If
Next rCell
MsgBox "所选区域中包含公式的单元格有" & FormulaNum & "个。"
End Sub

版权声明

本文仅代表作者观点,不代表本站立场。
本站资源均来自互联网整理,版权归原作者所有,切勿用作非法使用和未经授权的商用,因此带来的法律风险与本站无关。

本文链接:http://www.chousj.cn/exceljc/854.html

发表评论

评论列表(0人评论 , 140人围观)
☹还没有评论,来说两句吧...

免费资源分享网_电脑操作教程_免费源代码下载_免费字体下载_高清电脑壁纸

http://www.chousj.cn/

| 渝ICP备15004826号-8

Powered By

使用手机软件扫描微信二维码

关注我们可获取更多热点资讯