本代码示例用于批量删除第6, 7, 9, 10, 12, 13, 15, 16行的代码,使用这个批量删除行的代码要注意以下几点:
1)该代码只用于批量删除代码所在文件目录下(不含子目录)与 “*.xls*”后缀匹配的所有工作薄l所有工作表第6, 7, 9, 10, 12, 13, 15, 16行
2)该批量删除操作不可逆转,请注意备份
3)请确保每个工作薄的每个工作表删除的行都相同,且每个工作表只能执行一次,若执行多次会造成误删
Public Sub test()
On Error Resume Next
Dim arrNa(1 To 2000)
Dim fileNa, thisNa, sheetNum
Dim n, i, ii, iii
arrDel = [{6, 7, 9, 10, 12, 13, 15, 16}]
Application.DisplayAlerts = False
Set obj = CreateObject("scripting.FileSystemObject")
For Each fileNa In obj.GetFolder(ThisWorkbook.Path).Files
If fileNa Like "*.xls*" Then
n = n + 1: arrNa(n) = fileNa
End If
Next
For i = 1 To n
With CreateObject(arrNa(i))
thisNa = .Name
If thisNa = "批量删除当前目录下所有工作薄的所有工作表的指定行.xlsm" Then GoTo reg1
sheetNum = .Worksheets.Count
For ii = 1 To sheetNum
With .Worksheets(ii)
For iii = UBound(arrDel) To 1 Step -1
.Rows(arrDel(iii)).EntireRow.Delete shift:=xlUp
Next iii
Windows(thisNa).Visible = True
End With
Next ii
.Close True
End Wit
EXCEL批量删除当前目录下所有工作薄的所有工作表的指定行
最新推荐文章于 2024-06-18 14:30:00 发布