Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Zelle löschen, wenn Hintergrund rot

Zelle löschen, wenn Hintergrund rot
22.06.2009 10:52:58
Sabine
Hallo zusammen,
ich habe zwar im Archiv schon gesucht, aber nix passendes gefunden bzw. diesen Code, der aber nix macht.

Sub farben_löschen()
Dim zelle As Range
For Each zelle In Sheets("Tabelle2").Range("A:D") 'statt A:D Name einfügen
If zelle.Interior.Color = vbRed Then
zelle.Delete
End If
Next zelle
End Sub


Ich benötige ein Makro, was die Zelle löscht, wenn die Hintergrundfarbe rot ist. Das Makro muss alle Zellen im Bereich A2:D1000 prüfen.
Kann mir jemand helfen?
LG Sabine

Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zelle löschen, wenn Hintergrund rot
22.06.2009 10:58:32
Andi
Hi,
kommt die Hintergrund-Farbe evtl per begingert Formatierung zustande? In dem Fall kannst Di sie nämlich über den Colorindex nicht auslesen; dann müsstest Du in Deinem Makro direkt die Bedingung der Formatierung auswerten.
Schönen Gruß,
Andi
AW: Zelle löschen, wenn Hintergrund rot
22.06.2009 11:02:30
Sabine
Ne, ist keine bedingte Formatierung,
Anzeige
AW: Zelle löschen, wenn Hintergrund rot
22.06.2009 11:27:17
Hajo_Zi
Halo Sabine,
das Makro sieht ok aus, lade mal eine Datei hoch wo das nicht klappt.
Es ist tatsächlich vbred? Hast Du das schon mal geprüft?

meinst du Inhalt löschen und...
22.06.2009 11:30:29
robert
...farbe weg, oder ?
dh-in allen zellen mit rotem hintergrund wird der inhalt gelöscht und die farbe weg
probier es mal aus
gruß
robert

Sub farben_löschen()
Dim zelle As Range
Dim bereich As Range
Set bereich = Sheets("Tabelle1").Range("A2:D1000") 'Sheets anpassen !
For Each zelle In bereich
If zelle.Interior.ColorIndex = 3 Then
zelle.ClearContents
zelle.Interior.ColorIndex = xlNone
End If
Next zelle
End Sub


Anzeige
AW: meinst du Inhalt löschen und...
22.06.2009 11:50:22
Sabine
Hallo Robert,
das Makro klappt. Danke schön!
@ Hajo: Keine Ahnung, was mit dem anderen Makro war. Da das Makro von Robert klappt, belasse ich es dabei. Auch Dir vielen Dank für die Hilfe!
LG Sabine
Danke f.Rückmeldung..owT
22.06.2009 12:15:31
robert
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige

Infobox / Tutorial

Zellen mit rotem Hintergrund in Excel löschen


Schritt-für-Schritt-Anleitung

Um Zellen in Excel zu löschen, wenn deren Hintergrund rot ist, kannst Du ein einfaches Makro verwenden. Hier ist eine Schritt-für-Schritt-Anleitung:

  1. Excel öffnen: Starte Excel und öffne die Datei, in der Du die Zellen überprüfen möchtest.

  2. Entwicklertools aktivieren: Wenn Du das Menü "Entwicklertools" noch nicht aktiviert hast, gehe zu "Datei" > "Optionen" > "Menüband anpassen" und aktiviere "Entwicklertools".

  3. VBA-Editor öffnen: Klicke auf "Entwicklertools" und dann auf "Visual Basic".

  4. Neues Modul einfügen: Im VBA-Editor, klicke mit der rechten Maustaste auf "VBAProject (DeineDatei.xlsx)" und wähle "Einfügen" > "Modul".

  5. Makro einfügen: Kopiere den folgenden Code in das Modul:

    Sub farben_löschen()
       Dim zelle As Range
       Dim bereich As Range
       Set bereich = Sheets("Tabelle1").Range("A2:D1000") 'Sheets anpassen !
       For Each zelle In bereich
           If zelle.Interior.ColorIndex = 3 Then
               zelle.ClearContents
               zelle.Interior.ColorIndex = xlNone
           End If
       Next zelle
    End Sub
  6. Makro ausführen: Schließe den VBA-Editor und gehe zurück zu Excel. Klicke auf "Makros", wähle "farben_löschen" und klicke auf "Ausführen".

Nun werden alle Zellen in dem angegebenen Bereich mit rotem Hintergrund gelöscht und die Hintergrundfarbe entfernt.


Häufige Fehler und Lösungen

  • Fehler 1: Das Makro funktioniert nicht.

    • Lösung: Überprüfe, ob die Hintergrundfarbe tatsächlich vbRed oder ColorIndex = 3 ist. Manchmal kann die Farbe anders definiert sein.
  • Fehler 2: Zellen werden nicht gelöscht.

    • Lösung: Stelle sicher, dass der angegebene Bereich im Makro korrekt ist. Überprüfe auch, ob die Zellen wirklich einen roten Hintergrund haben und nicht durch bedingte Formatierungen gefärbt sind.

Alternative Methoden

Wenn Du die Zellen nicht über ein Makro löschen möchtest, kannst Du auch die Filterfunktion nutzen:

  1. Wähle die gesamte Tabelle aus.
  2. Aktiviere den Autofilter über "Daten" > "Filter".
  3. Filtere nach Zellen mit rotem Hintergrund.
  4. Markiere die gefilterten Zellen und drücke die Entf-Taste, um den Inhalt zu löschen.

Das ist eine praktische Methode, wenn Du nicht mit VBA arbeiten möchtest.


Praktische Beispiele

Hier sind einige Beispiele, wie Du das Makro anpassen kannst:

  • Nur Inhalt löschen, Hintergrundfarbe behalten:

    If zelle.Interior.ColorIndex = 3 Then
       zelle.ClearContents
    End If
  • Zellen mit verschiedenen Farben löschen:

    Ändere die If-Bedingung, um andere Farben zu überprüfen.


Tipps für Profis

  • Makros speichern: Stelle sicher, dass Du die Datei im Format .xlsm speicherst, um die Makros zu behalten.
  • Backup machen: Vor dem Ausführen eines Makros, das Zellen löscht, solltest Du eine Sicherungskopie Deiner Datei erstellen.
  • Verwendung von ColorIndex: Um die Farben zu überprüfen, kannst Du auch zelle.Interior.Color verwenden, falls Du RGB-Werte nutzen möchtest.

FAQ: Häufige Fragen

1. Wie kann ich die Hintergrundfarbe einer Zelle ändern?
Du kannst die Hintergrundfarbe über die Registerkarte "Start" ändern, indem Du eine Zelle auswählst und dann auf "Füllfarbe" klickst.

2. Funktioniert das Makro in Excel 2016?
Ja, das Makro funktioniert in Excel 2016 und den meisten anderen modernen Excel-Versionen. Achte darauf, dass Du die richtige Tabelle und den richtigen Bereich angibst.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige