VBA-循环浏览所有床单,排除一张



我需要在工作簿中的所有表上执行完全相同的任务,但我有以下代码,但是我会收到以下错误:

如果没有块,结束

    Sub Servers3_DeleteIrrelevantColumns()
    'Initialize variables
    Dim currentColumn As Integer
    Dim columnHeading As String
    Dim wrkSht As Worksheet
    'Rename headers on all sheets if matched
        If wrkSht.Name <> "New Servers" Then
    For Each wrkSht In ActiveWorkbook.Worksheets
            wrkSht.Cells(1, 1).EntireRow.Replace What:="*ServerName*", Replacement:="Server Name", Lookat:=xlWhole
            For currentColumn = wrkSht.UsedRange.Columns.Count To 1 Step -1
                columnHeading = wrkSht.UsedRange.Cells(1, currentColumn).Value
                'Check whether to keep column
                Select Case columnHeading
                    Case "Server Name"
                    'Do nothing
                    Case Else
                    wrkSht.Columns(currentColumn).Delete
                End Select
            Next
        End If
End Sub

这是我Quesiton的工作解决方案:

Sub Servers3_DeleteIrrelevantColumns()
    'Initialize variables
    Dim currentColumn As Integer
    Dim columnHeading As String
    Dim wrkSht As Worksheet
    'Rename headers on all sheets if matched
    For Each wrkSht In ActiveWorkbook.Worksheets
        If wrkSht.Name <> "New Servers" Then
            wrkSht.Cells(1, 1).EntireRow.Replace What:="*ServerName*", Replacement:="Server Name", Lookat:=xlWhole
            For currentColumn = wrkSht.UsedRange.Columns.Count To 1 Step -1
                columnHeading = wrkSht.UsedRange.Cells(1, currentColumn).Value
                'Check whether to keep column
                Select Case columnHeading
                    Case "Server Name"
                    'Do nothing
                    Case Else
                    wrkSht.Columns(currentColumn).Delete
                End Select
            Next
        End If
    Next wrkSht
End Sub

相关内容

最新更新