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

Forumthread: Nichtfarbige Zellen löschen

Nichtfarbige Zellen löschen
Walter
Hallo Excelfreunde,
Ich möchte in einer Tabelle alle nicht markierten Zellen löschen.
Im Forum habe ich zwei Lösungen gefunden, bekomme es aber nicht hin.
Bitte um Hilfe.
www.herber.de/bbs/user/67349.xls"
Es grüßt
Rentner Walter
Anzeige

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

Betreff
Benutzer
Anzeige
AW: Nichtfarbige Zellen löschen
20.01.2010 15:01:23
Tino
Hallo,
versuche es mal mit diesem Code.
Sub test()
Dim Bereich As Range, tmpRng As Range
Set Bereich = Range("A1", Cells(Cells(Rows.Count, 1).End(xlUp).Row, 70))
Application.ScreenUpdating = False
For Each Bereich In Bereich
If Bereich.Interior.ColorIndex  xlColorIndexNone Then
If Not tmpRng Is Nothing Then
Set tmpRng = Union(tmpRng, Bereich)
Else
Set tmpRng = Bereich
End If
End If
Next Bereich
If Not tmpRng Is Nothing Then
tmpRng.ClearContents
End If
Application.ScreenUpdating = True
End Sub
Gruß Tino
Anzeige
AW: Nichtfarbige Zellen löschen
20.01.2010 15:03:45
Tino
Hallo,
Du möchtest ja die nicht farbigen Zellen löschen.
Mach aus
If Bereich.Interior.ColorIndex  xlColorIndexNone Then
dies
If Bereich.Interior.ColorIndex = xlColorIndexNone Then
Gruß Tino
Anzeige
AW: Nichtfarbige Zellen löschen
20.01.2010 15:02:38
Rudi
Hallo,
also alles, was keinen oder weißen Hintergrund hat?
Sub tt()
Dim rngDel As Range
Dim rngC As Range
Application.ScreenUpdating = False
For Each rngC In ActiveSheet.UsedRange.Cells
If rngC.Interior.ColorIndex = xlNone _
Or rngC.Interior.Color = RGB(255, 255, 255) Then
If rngDel Is Nothing Then
Set rngDel = rngC
Else
Set rngDel = Union(rngDel, rngC)
End If
End If
Next
If Not rngDel Is Nothing Then rngDel.ClearContents
Application.ScreenUpdating = True
End Sub

Gruß
Rudi
Anzeige
AW: Nichtfarbige Zellen löschen
20.01.2010 16:10:05
Walter
Dank an Euch,
geht wunderbar
Gruß
Walter
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Nichtfarbige Zellen in Excel löschen


Schritt-für-Schritt-Anleitung

Um nichtfarbige Zellen in Excel zu löschen, kannst du den folgenden VBA-Code verwenden. Dieser hilft dir, alle Zellen ohne Hintergrundfarbe zu identifizieren und zu löschen.

  1. Öffne deine Excel-Datei.

  2. Drücke ALT + F11, um den VBA-Editor zu öffnen.

  3. Klicke auf Einfügen und dann auf Modul, um ein neues Modul zu erstellen.

  4. Füge den folgenden Code in das Modul ein:

    Sub NichtfarbigeZellenLoeschen()
        Dim rngDel As Range
        Dim rngC As Range
        Application.ScreenUpdating = False
        For Each rngC In ActiveSheet.UsedRange.Cells
            If rngC.Interior.ColorIndex = xlNone Or rngC.Interior.Color = RGB(255, 255, 255) Then
                If rngDel Is Nothing Then
                    Set rngDel = rngC
                Else
                    Set rngDel = Union(rngDel, rngC)
                End If
            End If
        Next
        If Not rngDel Is Nothing Then rngDel.ClearContents
        Application.ScreenUpdating = True
    End Sub
  5. Schließe den VBA-Editor und gehe zurück zu Excel.

  6. Drücke ALT + F8, wähle NichtfarbigeZellenLoeschen aus und klicke auf Ausführen.

Nun solltest du alle nicht farbigen Zellen in deinem Arbeitsblatt gelöscht haben.


Häufige Fehler und Lösungen

  • Fehler: Der Code funktioniert nicht.

    • Lösung: Stelle sicher, dass der Code korrekt kopiert wurde. Überprüfe die Syntax und ob du die richtigen Farbwerte verwendest.
  • Fehler: Kann den markierten Bereich nicht gruppieren.

    • Lösung: Achte darauf, dass der zu bearbeitende Bereich korrekt ausgewählt ist und keine filternden Bedingungen aktiv sind.

Alternative Methoden

Falls du lieber ohne VBA arbeiten möchtest, kannst du auch die Filterfunktion nutzen:

  1. Wähle den Bereich deiner Daten aus.
  2. Gehe zu Daten > Filter.
  3. Klicke auf den Filterpfeil der Spalte, die du überprüfen möchtest.
  4. Deaktiviere alle Farben außer „Keine Füllung“.
  5. Markiere die gefilterten Zellen und lösche sie.

Diese Methode eignet sich besonders, wenn du nur einen bestimmten Bereich in Excel bearbeiten möchtest.


Praktische Beispiele

Wenn du nur bestimmte Zellen löschen möchtest, kannst du den Code anpassen. Zum Beispiel, um nur Zellen in einem bestimmten Bereich zu löschen:

Set Bereich = Range("A1:D10") ' Beispiel für einen bestimmten Bereich

Dies löscht nur die nichtfarbigen Zellen im Bereich A1 bis D10.


Tipps für Profis

  • Nutze den Befehl Application.ScreenUpdating = False, um die Bildschirmaktualisierung während des Codes zu deaktivieren. Das verbessert die Performance.
  • Wenn du oft mit gefilterten Daten arbeitest, denke daran, dass die Filtereinstellungen nach dem Löschen von Zellen zurückgesetzt werden müssen.
  • Verwende Excel Summewenn schriftfarbe rot, um nur bestimmte farbige Zellen zu bearbeiten, indem du die Bedingung im Code anpasst.

FAQ: Häufige Fragen

1. Wie kann ich alle markierten Zellen löschen?
Du kannst die Tastenkombination Entf verwenden, nachdem du die gewünschten Zellen markiert hast.

2. Was passiert mit formatierten Zellen, wenn ich sie lösche?
Die Formatierungen gehen verloren, wenn du den Inhalt der Zellen löschst. Wenn du die Formatierungen beibehalten möchtest, musst du die Zellen nur leeren, statt sie zu löschen.

3. Kann ich den Code auch in Excel 365 verwenden?
Ja, der VBA-Code funktioniert in Excel 365 sowie in anderen Versionen von Excel.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige