在使用Access VBA查找Excel中的最后一行或最后一列时,可以使用以下代码:
Dim xlApp As Object
Dim xlWorkbook As Object
Dim xlWorksheet As Object
Dim lastRow As Long
Set xlApp = CreateObject("Excel.Application")
Set xlWorkbook = xlApp.Workbooks.Open("路径/文件名.xlsx")
Set xlWorksheet = xlWorkbook.Worksheets("工作表名称")
lastRow = xlWorksheet.Cells(xlWorksheet.Rows.Count, 1).End(-4162).Row
xlWorkbook.Close False
xlApp.Quit
Set xlWorksheet = Nothing
Set xlWorkbook = Nothing
Set xlApp = Nothing
MsgBox "最后一行是:" & lastRow
这段代码首先创建了Excel应用程序对象(xlApp),打开了指定的Excel文件(xlWorkbook),并且选择了指定的工作表(xlWorksheet)。然后,使用xlWorksheet.Cells(xlWorksheet.Rows.Count, 1).End(-4162).Row
获取到最后一行的行号,并将其存储在变量lastRow
中。最后,关闭Excel文件和应用程序,并释放相关对象的引用。弹出消息框显示最后一行的行号。
Dim xlApp As Object
Dim xlWorkbook As Object
Dim xlWorksheet As Object
Dim lastColumn As Long
Set xlApp = CreateObject("Excel.Application")
Set xlWorkbook = xlApp.Workbooks.Open("路径/文件名.xlsx")
Set xlWorksheet = xlWorkbook.Worksheets("工作表名称")
lastColumn = xlWorksheet.Cells(1, xlWorksheet.Columns.Count).End(-4161).Column
xlWorkbook.Close False
xlApp.Quit
Set xlWorksheet = Nothing
Set xlWorkbook = Nothing
Set xlApp = Nothing
MsgBox "最后一列是:" & lastColumn
这段代码与查找最后一行的代码类似,只是改为使用xlWorksheet.Cells(1, xlWorksheet.Columns.Count).End(-4161).Column
来获取最后一列的列号,并将其存储在变量lastColumn
中。
上述代码中使用了Excel应用程序对象(xlApp),打开了指定的Excel文件(xlWorkbook),并选择了指定的工作表(xlWorksheet)。然后,使用End
和常量-4162
(xlUp)或-4161
(xlToLeft)来查找最后一个非空行或列的位置。最后,关闭Excel文件和应用程序,并释放相关对象的引用。弹出消息框显示最后一行或列的行号或列号。
这是使用Access VBA查找Excel中最后一行和最后一列的一种常用方法。注意,路径/文件名.xlsx、工作表名称需要根据实际情况进行替换。
领取专属 10元无门槛券
手把手带您无忧上云