der nachfolgende Code aus dem Internet löscht alle Spalten außer die im Array angeführten:
Kann mir jemand den Code so abändern, dass die Spaltennamen nicht im Code namentlich angeführt werden müssen sondern aus Tabelle2!A1:Ax genommen werden.
Option Explicit
Sub SpaltenBelassenLöschen()
Dim rng As Range, rngDel As Range
Dim vntColumnsToKeep As Variant
'Überschriften die NICHT gelöscht werden sollen!
vntColumnsToKeep = Array("Name", "Vorname", "Strasse", "Ort")
For Each rng In ActiveSheet.UsedRange.Rows(1).Cells
If IsError(Application.Match(rng, vntColumnsToKeep, 0)) Then
If rngDel Is Nothing Then
Set rngDel = rng.EntireColumn
Else
Set rngDel = Union(rngDel, rng.EntireColumn)
End If
End If
Next
If Not rngDel Is Nothing Then rngDel.Delete
Set rng = Nothing
Set rngDel = Nothing
End Sub
Besten Dank für die Hilfe, Servus Walter