VBA中如何获取一个表格的行数和列数

2018-09-03  本文已影响0人  王伯卿

有的时候在操作excel的时候,涉及到循环什么时候结束,就非常需要知道操作区域的最后一行是第几行,或者最后一列是第几列。

因此这边使用下面两个函数,可以比较快速的获取整个区域的行数和列数(不是指定的的区域)

'返回一整个区域的列数
Private Function get_clo_num()
    Dim clo_num As Integer
    Dim clo_rng As Range
    Set clo_rng = Range(Cells(1, 1), Cells(1, 1).End(xlToRight))
    
    '这里用了counta来计算非空单元格的数量
    '因此这边选定的range范围是第一行
    clo_num = Application.WorksheetFunction.CountA(clo_rng)
    get_clo_num = clo_num
End Function
'返回一整个区域的行数(表头已经包括)
Private Function get_row_num()
    Dim row_num As Long
    Dim row_rng As Range
    
    Set row_rng = Range(Cells(1, 1), Cells(1, 1).End(xlDown))
    '这里用了counta来计算非空单元格的数量
    '因此这边选定的range范围是第一列
    row_num = Application.WorksheetFunction.CountA(row_rng)
    get_row_num = row_num
End Function

主要就是使用了CountA来统计非空单元格的数量,然后这边传的参数是一整行或者一整列,计算这行和这列有多少个非空单元格,就知道这个表格的行数和列数了。

上一篇下一篇

猜你喜欢

热点阅读