Note: The other languages of the website are Google-translated. Back to English

Wie lösche ich ganze Spalten basierend auf dem Header-Wert in Excel?

In vielen Fällen müssen Sie möglicherweise die gesamten Spalten basierend auf dem Header-Wert in Excel löschen. Beispielsweise müssen Sie alle Spalten löschen, die den Wert "alt" in der Kopfzeile enthalten. In diesem Tutorial zeigen wir Ihnen detailliert Methoden zum Löschen ganzer Spalten basierend auf dem Header-Wert.

Löschen Sie ganze Spalten basierend auf dem Header-Wert mit VBA-Code
Löschen Sie mit Kutools for Excel ganze Spalten basierend auf dem Header-Wert


Löschen Sie ganze Spalten basierend auf dem Header-Wert mit VBA-Code

Sie können ganze Spalten basierend auf dem Header-Wert mit VBA-Code löschen. Bitte gehen Sie wie folgt vor.

1. Drücken Sie Andere + F11 Tasten gleichzeitig zum Öffnen der Microsoft Visual Basic-Anwendung Fenster.

2. In dem Microsoft Visual Basic-Anwendung Klicken Sie im Fenster Insert > Modul. Kopieren Sie dann den folgenden Code und fügen Sie ihn in das Modulfenster ein.

VBA-Code: Löschen Sie ganze Spalten basierend auf dem Header-Wert

Sub DeleteSpecifcColumn()
	Set MR = Range("A1:D1")
	For Each cell In MR
		If cell.Value = "old" Then cell.EntireColumn.Delete
	Next
End Sub

Anmerkungen:

1) im Code „alt”Ist der Header-Wert, auf dessen Grundlage Sie die gesamte Spalte löschen möchten. Bitte ändern Sie Ihren Header-Wert manuell. Und A1: D1 ist der Spaltenbereich, den Sie verwenden möchten.
2) Bei diesem Code muss die Groß-/Kleinschreibung beachtet werden.

3. Drücken Sie die Taste F5 drücken, um den Code auszuführen, wird die gesamte Spalte mit einer Überschrift gleich dem angegebenen Text sofort gelöscht.


Löschen Sie mit Kutools for Excel ganze Spalten basierend auf dem Header-Wert

Mit Kutools for Excel Wählen Sie Bestimmte Zellen aus Mit diesem Dienstprogramm können Sie einfach alle Spalten auswählen, die zuerst den bestimmten Header-Wert enthalten, und diese ausgewählten Spalten dann sofort löschen. Bitte gehen Sie wie folgt vor.

Vor der Bewerbung Kutools for Excel, Bitte Laden Sie es zuerst herunter und installieren Sie es.

1. Wählen Sie den Bereich aus, der die zu löschenden Spalten enthält, und klicken Sie dann auf Kutoolen > Auswählen > Wählen Sie Bestimmte Zellen aus. Siehe Screenshot:

2. In dem Wählen Sie Bestimmte Zellen aus Wählen Sie im Dialogfeld Ganze Spalte Option in der Auswahltyp Abschnitt und in der Spezifischer Typ Dropdown-Liste, wählen Sie Equals Geben Sie dann den Header-Wert in das folgende Feld ein. Und zum Schluss klicken Sie auf OK Taste. Siehe Screenshot:

3. Klicken Sie auf die OK Wenn Sie in einem anderen Dialogfeld auf die Schaltfläche klicken, werden sofort die Spalten ausgewählt, die den angegebenen Kopfwert enthalten.

4. Klicken Sie mit der rechten Maustaste auf die Spaltenüberschrift der ausgewählten Spalte, und klicken Sie dann auf Löschen aus dem Kontextmenü. Dann werden alle ausgewählten Spalten gleichzeitig gelöscht.

  Wenn Sie eine kostenlose Testversion wünschen (30-Tag) dieses Dienstprogramms, Bitte klicken Sie, um es herunterzuladenund wenden Sie dann die Operation gemäß den obigen Schritten an.


Die besten Tools für die Office-Produktivität

Kutools for Excel löst die meisten Ihrer Probleme und erhöht Ihre Produktivität um 80%

  • Wiederverwendung: Schnell einfügen komplexe Formeln, Diagramme und alles, was du vorher benutzt hast; Zellen verschlüsseln mit Passwort; Mailingliste erstellen und E-Mails senden ...
  • Super Formelriegel (leicht mehrere Textzeilen und Formeln bearbeiten); Layout lesen (leichtes Lesen und Bearbeiten einer großen Anzahl von Zellen); In gefilterten Bereich einfügen...
  • Zellen / Zeilen / Spalten zusammenführen ohne Daten zu verlieren; Inhalt geteilter Zellen; Kombinieren Sie doppelte Zeilen / Spalten... doppelte Zellen verhindern; Bereiche vergleichen...
  • Wählen Sie Duplizieren oder Eindeutig Reihen; Wählen Sie Leere Zeilen (alle Zellen sind leer); Super Find und Fuzzy Find in vielen Arbeitsmappen; Zufällige Auswahl ...
  • Exakte Kopie Mehrere Zellen ohne Änderung der Formelreferenz; Referenzen automatisch erstellen zu mehreren Blättern; Aufzählungszeichen einfügen, Kontrollkästchen und mehr ...
  • Text extrahieren, Text hinzufügen, Nach Position entfernen, Leerzeichen entfernen;; Paging-Zwischensummen erstellen und drucken; Inhalt und Kommentare zwischen Zellen konvertieren...
  • Superfilter (Speichern und Anwenden von Filterschemata auf andere Blätter); Erweiterte Sortierung nach Monat / Woche / Tag, Häufigkeit und mehr; Spezialfilter fett, kursiv ...
  • Kombinieren Sie Arbeitsmappen und Arbeitsblätter;; Tabellen basierend auf Schlüsselspalten zusammenführen; Daten in mehrere Blätter aufteilen; Batch-Konvertierung von xls, xlsx und PDF...
  • Mehr als 300 leistungsstarke Funktionen. Unterstützt Office / Excel 2007-2021 und 365. Unterstützt alle Sprachen. Einfache Bereitstellung in Ihrem Unternehmen oder Ihrer Organisation. 30-tägige kostenlose Testversion mit allen Funktionen. 60 Tage Geld-zurück-Garantie.
kte tab 201905

Office Tab Bringt die Oberfläche mit Registerkarten in Office und erleichtert Ihnen die Arbeit erheblich

  • Aktivieren Sie das Bearbeiten und Lesen von Registerkarten in Word, Excel und PowerPoint, Publisher, Access, Visio und Project.
  • Öffnen und erstellen Sie mehrere Dokumente in neuen Registerkarten desselben Fensters und nicht in neuen Fenstern.
  • Steigert Ihre Produktivität um 50 % und reduziert jeden Tag Hunderte von Mausklicks für Sie!
officetab unten
Kommentare (12)
Noch keine Bewertungen. Bewerten Sie als Erster!
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Tut mir leid, wenn dies sehr einfach erscheint, aber dies ist das erste Mal, dass ich vba versuche. Auf diese Weise würde ich es anwenden, um mehrere Spaltenüberschriften zu löschen. Ich versuche tatsächlich, nur bestimmte Kopfzeilenspalten beizubehalten und den Rest einer sich ändernden Liste zu löschen.
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Kopieren Sie im ersten Code einfach die 4. Zeile und ändern Sie das "alte" in den zweiten Spaltennamen, und es wird funktionieren
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Hey! Dies funktioniert gut, bis Sie zwei zusammenhängende Spalten mit derselben Überschrift haben. Angenommen, Ihr Bereich ist A1:A5, und A2 und A3 haben die Überschrift „alt“. Es löscht A2, aber dann bewegt sich A3 an die Stelle, an der A2 früher belegt war, und der Code überspringt es, da es das neue A3 betrachtet, die nächste Zelle in seinem Bereich.
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Hallo Elias,
Wie Sie bereits erwähnt haben, haben A2 und A3 den gleichen Header "alt". Sie befinden sich jedoch in derselben Spalte. Nach dem Anwenden des Codes wird die gesamte Spalte A sofort entfernt.
Ich bin mir nicht sicher, ob ich Ihren Punkt verstehe. Wäre nett, wenn du einen Screenshot von dem machen könntest, was du zu tun versuchst.
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Hallo, ist es möglich, dies mit mehreren Spaltennamen zu tun?
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Hallo Markus,
Versuchen Sie den folgenden Code. Schließen Sie in der achten Zeile bitte jeden Spaltennamen in doppelte Anführungszeichen ein und trennen Sie sie durch Komma. Hoffe, ich kann helfen. Danke.

Sub DeleteSpecifcColumn()

Dim xFNum, xFFNum, xCount als Ganzzahl

Dim xStr als Zeichenfolge

Dim xArrName als Variante

Dim MR, xRg als Bereich

On Error Resume Next

Setze MR = Reichweite ("A1:N1")

xArrName = Array("old", "new", "get") 'schließen Sie jeden Spaltennamen in doppelte Anführungszeichen ein und trennen Sie sie durch Komma

xCount = MR.Count

xStr = xArrName(xFNum)

Für xFFNum = xCount To 1 Schritt -1

Setze xRg = Zellen(1, xFFNum)

Für xFNum = 0 zu UBound(xArrName)

xStr = xArrName(xFNum)

Wenn xRg.Value = xStr Then xRg.EntireColumn.Delete

Nächste xFNum

Weiter

End Sub
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Ich denke, Zeile 12 muss geändert werden, damit der Code funktioniert. Ursprüngliche Zeile 12 "Set xRg = Cells(1, xFFNum)" modifizierte Zeile 12 "Set xRg = MR(1, xFFNum)"
Sub DeleteSpecifcColumn()
Dim xFNum, xFFNum, xCount als Ganzzahl
Dim xStr als Zeichenfolge
Dim xArrName als Variante
Dim MR, xRg als Bereich
On Error Resume Next
Setze MR = Reichweite ("A1:N1")
xArrName = Array("old", "new", "get") 'schließen Sie jeden Spaltennamen in doppelte Anführungszeichen ein und trennen Sie sie durch Komma
xCount = MR.Count
xStr = xArrName(xFNum)
Für xFFNum = xCount To 1 Schritt -1
Setze xRg = MR(1, xFFNum)
Für xFNum = 0 zu UBound(xArrName)
xStr = xArrName(xFNum)
Wenn xRg.Value = xStr Then xRg.EntireColumn.Delete
Nächste xFNum
Weiter
End Sub
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Was ist, wenn die Überschriften ab der 4. Reihe beginnen?
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Das VBA-Beispiel besagt, dass der Code alle Spalten löscht, deren Kopfzeilen „alt“ enthalten. Das ist nicht der Fall. Der Operator = löscht nur exakte Übereinstimmungen. Sie müssen den LIKE-Operator mit einem Platzhalter verwenden.
Fester Code:Sub DeleteSpecifcColumn()
Setze MR = Reichweite ("A1:D1")
Für jede Zelle in MR
Wenn cell.Value WIE "alt*" dann cell.EntireColumn.Delete
Weiter
End Sub

Dieser Kommentar wurde vom Moderator auf der Website minimiert
Hallo, vielen Dank für Ihre Korrektur und das Teilen. 
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Hola, tengo una hoja de excel con varios datas, digamos 4 columnas y 12 filas, me gustaría poder imprimir cada fila en un folio separado en una plantilla, es decir, tenemos una hoja con varios nombres y apellidos y teléfono, quiero imprimir tantas páginas como filas tenga la hoja de excel, he inte tado varias cosas pero no encuentro la forma. Gracias de antemano
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Hallo,
Wenn Sie jede Zeile auf einer separaten Seite im Arbeitsblatt drucken möchten, ist hier ein Vorschlag, dass Sie alle 1 Zeile Seitenumbrüche einfügen und diese dann drucken.
Die Methoden in diesem Artikel können Ihnen einen Gefallen tun. Bitte versuchen Sie es. Danke.
Wie fügt man in Excel alle X Zeilen einen Seitenumbruch ein?[/url]
https://www.extendoffice.com/documents/excel/1774-excel-insert-page-break-every-row.html
Es sind noch keine Kommentare vorhanden
Hinterlassen Sie Ihre Kommentare
Als Gast posten
×
Bewerte diese Nachricht:
0   Figuren
Vorgeschlagene Standorte

Folgen Sie uns

Copyright © 2009 - www.extendoffice.com. | Alle Rechte vorbehalten. Unterstützt von ExtendOffice. | Sitemap
Microsoft und das Office-Logo sind Marken oder eingetragene Marken der Microsoft Corporation in den USA und / oder anderen Ländern.
Geschützt durch Sectigo SSL