我想在Excel文件中一次为每个工作表执行以下VBA代码:
Sub sample_code()
Columns("B:B").Select
Selection.Replace What:=" ", Replacement:="", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Range("A:A,D:J").Select
Range("D1").Activate
Selection.Delete Shift:=xlToLeft
Columns("F:P").Select
Selection.Delete Shift:=xlToLeft
Columns("A:E").EntireColumn.AutoFit
Columns("B:B").ColumnWidth = 30.86
Range("A1:E1").Select
Selection.Font.Bold = True
End Sub
我该怎么做?
答案 0 :(得分:5)
像这样:
Sub sample_code()
Dim ws As Worksheet
For Each ws In Worksheets
With ws
.Columns("B:B").Replace What:=" ", Replacement:="", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
.Range("A:A,D:J").Delete Shift:=xlToLeft
.Columns("F:P").Delete Shift:=xlToLeft
.Columns("A:E").EntireColumn.AutoFit
.Columns("B:B").ColumnWidth = 30.86
.Range("A1:E1").Font.Bold = True
End With
Next ws
End Sub
答案 1 :(得分:1)
此外,将Application.ScreenUpdating = False添加到开头,将Application.ScreenUpdating = True添加到最后,以使其更快。