|
方法1:UsedRange
Row = Sheet1.UsedRange.Row + Sheet1.UsedRange.Rows.Count - 1
CoL = Sheet1.UsedRange.Column + Sheet1.UsedRange.Columns.Count - 1
MsgBox "最大行数:" & Row & " 最大列数:" & col
此方法有个不好的地方是:只要你在单元格上写上字以后,清空单元格,它还是认为你用过单元格。所以说这个方法也不是很完美的。由于这个原因,程序有时会出现不可预期的结果。
方法2:Range.End(xlup),Range.End(xlLeft)
Option Explicit
Sub LastRow()
Dim rng As Range
Set rng = Sheet1.Range("A"&sheet1.rows.count).End(xlUp)
MsgBox "A列中最后一个非空单元格是" & rng.Address(0, 0) _
& ",行号" & rng.Row & ",数值" & rng.Value
Set rng = Nothing
End Sub
Sub LastColumn()
Dim rng As Range
Set rng = Sheet1.Range("IV1").End(xlToLeft)
MsgBox "第一行中最后一个非空单元格是" & rng.Address(0, 0) _
& ",列号" & rng.Column & ",数值" & rng.Value
Set rng = Nothing
End Sub
缺点:只能指定的列或行的最后非空单元格。
http://hi.baidu.com/ridly/blog/item/a1cc8226a87bdf1a8a82a19f.html
[ 本帖最后由 ridly 于 2010-7-30 10:33 编辑 ] |
|