【VBA研究】版本无关的取EXCEL有效行列数方法

来源:互联网 发布:umts是什么网络类型 编辑:程序博客网 时间:2024/05/29 15:35

iamlaosong文

常用下面方式取得Excel工作表的有效行数,前者是2003版,后者是2007版:

1、MaxRow = sheets(1).[A65536].End(xlUp).Row

2、MaxRow = sheets(1).[A1048576].End(xlUp).Row

在不知道版本的情况下,一种方法是判断文件版本或者文件扩展名,另一种方法简单通用,就是取Excel表格的最大行列数,然后根据这个行数取有效行数,取有效行数语句如下:

ExcelRowNo = Sheets(1).Cells.Rows.Count
MaxRow =  Sheets(1).Range("A" & ExcelRowNo).End(xlUp).Row

或者,换种写法:

MaxRow = Sheets(1).Cells(ExcelRowNo, 1).End(xlUp).Row

对当前工作表,写法如下:

ExcelRowNo = Cells.Rows.Count
MaxRow = Range("A" & ExcelRowNo).End(xlUp).Row

同样,取有效列数也可以采取同样的办法:

ExcelColNo = Sheets(1).Cells.Columns.Count
MaxCol = Sheets(1).Cells(1, ExcelColNo).End(xlToLeft).Column

最后,如果取行列数的行列没有空单元格,用下面的的办法更简单:

MaxRow = Range("A1" ).End(xlDown).Row

MaxCol =Range("A1" ).End(xlToRight).Column

关于取有效行列数参见:点击打开链接

0 0
原创粉丝点击