如何使用VBA在Excel工作表中找到已使用的列数?

Dim lastRow As Long
lastRow = Sheet1.Range("A" & Rows.Count).End(xlUp).Row
MsgBox lastRow

使用上面的VBA,我可以找到行数。但是,如何在给定的excel文件中找到列数?

最佳答案

您的示例代码获取当前列中最后一个非空白单元格的行号,并且可以按以下方式重写:

Dim lastRow As Long
lastRow = Sheet1.Cells(Rows.Count, 1).End(xlUp).Row
MsgBox lastRow

然后很容易看到,用于获取当前行中最后一个非空白单元格的列号的等效代码为:
Dim lastColumn As Long
lastColumn = Sheet1.Cells(1, Columns.Count).End(xlToLeft).Column
MsgBox lastColumn

这也可能对您有用:
With Sheet1.UsedRange
    MsgBox .Rows.Count & " rows and " & .Columns.Count & " columns"
End With

但请注意,如果A列和/或第1行为空白,则将不会产生与上述其他示例相同的结果。有关更多信息,请阅读UsedRange属性。

10-05 21:26