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

Forumthread: Spalten löschen an Hand konkreter Überschrift

Spalten löschen an Hand konkreter Überschrift
08.06.2024 12:36:36
Stephan
Hallo Zusammen,

ich möchte gerne bestimmte Spalten löschen und nutze Used.Range. Die zu löschenden Spalten habe ich definiert. Darunter ist auch die Spalte BIC (Spalte G). Leider steht im Verwendungszweck auch mal BIC, weswegen die Spalte Verwendungszweck (Spalte E) ebenfalls vollständig gelöscht wird. Am liebsten wäre mir, dass sofern in Spalte A eine Überschrift steht die gesamte Spalte gelöscht wird und der Makro nicht die ganzen Zeilen durchsucht. Leider kriege ich das nicht hin. Würde mich über Inspiration freuen. Grüße und vielen Dank im Voraus. Stephan

https://www.herber.de/bbs/user/170026.xlsb
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Spalten löschen an Hand konkreter Überschrift
08.06.2024 13:49:54
BoskoBiati2
Hallo,

diese Makro löscht ja fast alle Spalten Deiner Tabelle. Nach welchen Kriterien soll gelöscht werden?

Gruß

Edgar

AW: Spalten löschen an Hand konkreter Überschrift
08.06.2024 14:02:49
daniel
Hi

Probier's mal so

With Rows(1)

.Replace "BIC", True, xlwhole 'zu löschende Spalte
'---hier weitere Spalten, Überschrift durch True ersetzen
IF Worksheetfunction.Countif(.cells, True) then .specialcells(xlcelltypeconstants, 4).entirecolumn.delete
End With


Du ersetzterstmal die Spaltenüberschriften durch einen Wahrheitswert. Über diesen kann man dann die Zellen gezielt auswählen und damit die Spalten löschen.
Beim Ersetzen schränkst du den Bereich auf die Überschriftenzeile ein ersetzt nur bei Übereinstimmung des ganzen Textes (xlwhole).
Das vermeidet "Kollateralschäden"
(Wenn du ganz sicher gehen willst, setzt du auch noch MatchCase:=True, dann muss auch die Groß/Kleinschreibung stimmen.

Gruß Daniel
Anzeige
AW: Spalten löschen an Hand konkreter Überschrift
08.06.2024 14:01:51
BoskoBiati2
Hi,

eine Möglichkeit:

Sub Spaltenlöschen()

Sub Spaltenlöschen()
Dim Such As String
Dim loA As Long

Such = InputBox("Welche Überschrift willst Du suchen?", "Suchbegriff eingeben")

With Sheets("Test")
If Such = "" Then Exit Sub
loA = Application.WorksheetFunction.Match(Such, .Rows(1), 0)
.Columns(loA).Delete shift:=xlToLeft
End With

End Sub
End Sub



Gruß

Edgar
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
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