2016-10-26 1 views
0

Ich möchte die erste Spalte (A: A) in jedem Blatt außer im ersten oder im aktuellen Blatt löschen. Kann mir jemand helfen. Ich habe den folgenden Code verwendet, der die erste Spalte jedes Blattes löscht.Löschen der ersten Spalte von allen Blättern außer dem aktuellen Blatt in Excel

Sub deletefirstcolum() 

    Dim ws As Worksheet 

    For Each ws In Sheets 

    ws.Cells(1, 1).EntireColumn.Delete 

    Next ws 

End Sub 

Bitte helfen. Wie schließe ich das erste oder das aktuelle Blatt aus?

Antwort

1

Setzen Sie einen If Zustand auf dem Arbeitsblatt:

Sub deletefirstcolum() 

    Dim ws As Worksheet 

    For Each ws In Sheets 
     If Not ws Is ActiveSheet Then 
      ws.Cells(1, 1).EntireColumn.Delete 
     End If 

    Next ws 
End Sub 
+0

Ich würde 'ws.Columns (1) .Delete' bevorzugen. Aber das funktioniert +1. –

+0

Vielen Dank für Ihre Hilfe. Ich schätze es sehr. – Navy

0

Testen Sie, ob ws = auf das aktive Blatt:

Sub deletefirstcolum() 
    Dim aWs As Worksheet 
    Set aWs = ActiveSheet 

    Dim ws As Worksheet 

    For Each ws In Sheets 
     If aWs.Name <> ws.Name Then 
      ws.Cells(1, 1).EntireColumn.Delete 
     End If 
    Next ws 

End Sub 
+0

ich dies versucht. Es löschte die Spalte vom ersten Blatt auch – Navy

Verwandte Themen