如何修改VBA代码删除Excel工作表(Sheet1)的最后两行?
修改VBA代码删除Sheet1最后两行
原代码针对Excel表格(ListObject)设计,要适配普通工作表Sheet1并删除最后两行,可按以下方式修改:
修改后的完整代码
Dim ws As Worksheet Set ws = ThisWorkbook.Sheets("Sheet1") Dim LastRow As Long ' 以A列为基准计算数据最后一行,可根据实际数据所在列调整列标识(如"B"、"C") LastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row ' 确保有足够行数可删除,避免运行错误 If LastRow >= 2 Then ' 删除最后两行 ws.Rows(LastRow - 1 & ":" & LastRow).Delete End If
关键修改说明
- 工作表引用替换:将目标工作表从
Journal改为Sheet1,直接定位到普通工作表 - 最后行计算逻辑调整:不再依赖表格的
DataBodyRange,改用普通工作表的行查找方法,通过End(xlUp)定位数据区域的最后一行 - 增加安全判断:添加
LastRow >= 2的条件,防止工作表数据不足两行时触发错误 - 删除行方式优化:通过指定行范围
LastRow - 1 & ":" & LastRow,一次性删除最后两行,比逐行删除更高效
内容的提问来源于stack exchange,提问作者Bill_in_AZ
相关产品推荐
相关产品推荐

