Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Nicht benötigte Spalten löschen

Nicht benötigte Spalten löschen
Martin
Hallo miteinander
Ich habe eine Excel-Tabelle mit etwa 80 Spalten. In Zeile 1 ist jeweils der Titel der Spalte, z.B. Name, Vorname, Strasse, Ort, Nummer etc.
Für gewisse Auswertungen braucht's jedoch nur einen kleinen Teil der vielen Spalten, alle anderen können gelöscht werden.
Ich suche ein schnell laufendes Makro, dass mir alle nicht benötigten Spalten löscht.
Besten Dank im voraus.
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Nicht benötigte Spalten löschen
11.12.2009 15:24:34
Josef
Hallo Martin,
und wie sollen die zu löschenden Spalten erkannt werden?
Gruß Sepp

AW: Nicht benötigte Spalten löschen
11.12.2009 16:03:57
Martin
Hallo Sepp
Danke für die Frage:
In Zeile 1 sind ja die Titel der Spalten, z.B. "Name", "Vorname", "Strasse", "Ort", "Nummer", "Beginn", "Ende" und viele mehr.
Für eine Auswertung benötige ich z.B. die Spalten mit Titel "Name", "Vorname", "Ort", alle anderen sollten gelöscht werden. Das Makro soll also die Zeile 1 durchgehen und die nicht benötigten Spalten löschen.
Besten Dank
Anzeige
AW: Nicht benötigte Spalten löschen
11.12.2009 16:26:20
Josef
Hallo Martin,
' **********************************************************************
' Modul: Modul2 Typ: Allgemeines Modul
' **********************************************************************

Option Explicit

Sub deleteColumns()
  Dim rng As Range, rngDel As Range
  Dim vntColumnsToKeep As Variant
  
  'Überschriften die NICHT gelöscht werdn 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 rngDeldelete
  
  Set rng = Nothing
  Set rngDel = Nothing
End Sub

Gruß Sepp

Anzeige
AW: Nicht benötigte Spalten löschen
11.12.2009 16:34:55
Martin
Super! Besten Dank, Sepp, das ist eine grosse Hilfe. Ich hab's mit einer IF-Schlaufe versucht und bin da irgendwie stecken geblieben. Auf Deine Lösung wäre ich wohl nie im Leben gekommen.....
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige