Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
956to960
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
956to960
956to960
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Spalten löschen nach Überschrift

Spalten löschen nach Überschrift
04.03.2008 14:21:00
Nina
Hallo zusammen,
ich hoffe jemand kann mir bei folgendem Problem helfen:
Ich möchte per VBA alle Spalten einer Tabelle löschen, die nicht einer bestimmten Überschrift entsprechen. D.h., wenn ich in meiner Tabelle Spalten mit den Überschriften: Äpfel, Birnen, Bananen, Kiwis etc. habe, sollen alle Spalten gelöscht werden, die nicht die Überschrift Äpfel, Birnen oder Bananen haben.
Das Löschen bestimmter Spalten habe ich schon hinbekommen, dazu muss ich diese aber erst im Makro benennen (Z.B. Delete "Kiwis"), was ziemlich umständlich ist, da mehr Spalten gelöscht als beihalten werden sollen.
Vielen Dank für Eure Hilfe.

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Spalten löschen nach Überschrift
04.03.2008 15:03:52
Michael
Hallo
Dein Problem ist mir etwas unverständlich.
WIe identifizierst Du denn die "guten" Überschriften?
SInd die in einer anderen Tabelle?
ciao
MIchael
P.S.
poste Deinen code

AW: Spalten löschen nach Überschrift
04.03.2008 15:27:48
Nina
Hallo MIchael,
die "guten" Überschriften sind immer gleich und bekannt. Momentan löscht mein Code die "schlechten" Spaltenüberschriften. Da es aber ungefähr 30 "schlechte" Überschriften gibt und nur 5 "gute", versuche ich nun seit geraumer Zeit erfolglos einen Code zu schreiben, in dem alle Spalten gelöscht werden, die nicht den angegeben "guten" Überschriften entsprechen.
Hier mein Code:

Sub Ueberflüssig()
Dim rngFind As Range, arSearch As Variant, i%
arSearch = Array("MANDT", "LFDNR", "KOSTL", "ARBPL", "WERKS", "DATUMK", "POSNR", "ZPRFD", " _
ZPRFZ")
'das sind Spaltenüberschriften, die ünerwünscht sind
For i = 0 To UBound(arSearch)
Set rngFind = Rows(1).Find(arSearch(i), LookIn:=xlValues, LookAt:=xlWhole, MatchCase:=False)
If Not rngFind Is Nothing Then rngFind.EntireColumn.Delete
Next
End Sub


Anzeige
AW: Spalten löschen nach Überschrift
04.03.2008 15:28:00
Nina
Hallo MIchael,
die "guten" Überschriften sind immer gleich und bekannt. Momentan löscht mein Code die "schlechten" Spaltenüberschriften. Da es aber ungefähr 30 "schlechte" Überschriften gibt und nur 5 "gute", versuche ich nun seit geraumer Zeit erfolglos einen Code zu schreiben, in dem alle Spalten gelöscht werden, die nicht den angegeben "guten" Überschriften entsprechen.
Hier mein Code:

Sub Ueberflüssig()
Dim rngFind As Range, arSearch As Variant, i%
arSearch = Array("MANDT", "LFDNR", "KOSTL", "ARBPL", "WERKS", "DATUMK", "POSNR", "ZPRFD", " _
ZPRFZ")
'das sind Spaltenüberschriften, die ünerwünscht sind
For i = 0 To UBound(arSearch)
Set rngFind = Rows(1).Find(arSearch(i), LookIn:=xlValues, LookAt:=xlWhole, MatchCase:=False)
If Not rngFind Is Nothing Then rngFind.EntireColumn.Delete
Next
End Sub


Anzeige
AW: Spalten löschen nach Überschrift
04.03.2008 15:56:00
Beate
Hallo Nina,
Sub spaltelöschen2()
    Dim spaltenzähler As Integer
    Dim Suchbegriff As String
    spaltenzähler = 1
    While Cells(1, spaltenzähler) <> ""
        Suchbegriff = Cells(1, spaltenzähler)
        If Suchbegriff <> "Äpfel" And Suchbegriff <> "Birnen" And Suchbegriff <> "Kiwis" And Suchbegriff <> "Bananen" Then
            Columns(spaltenzähler).Delete
            spaltenzähler = spaltenzähler - 1
        End If
        spaltenzähler = spaltenzähler + 1
    Wend
End Sub


Gruß,
Beate

Anzeige
AW: Spalten löschen nach Überschrift
04.03.2008 16:13:00
Nina
Meine Heldin! Klappt wie geschmiert.
Vielen Dank!
Nina

224 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige