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
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ß TinoIf Bereich.Interior.ColorIndex xlColorIndexNone Then
diesIf Bereich.Interior.ColorIndex = xlColorIndexNone Then
Gruß TinoSub 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
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.
Öffne deine Excel-Datei.
Drücke ALT + F11, um den VBA-Editor zu öffnen.
Klicke auf Einfügen und dann auf Modul, um ein neues Modul zu erstellen.
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
Schließe den VBA-Editor und gehe zurück zu Excel.
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.
Fehler: Der Code funktioniert nicht.
Fehler: Kann den markierten Bereich nicht gruppieren.
Falls du lieber ohne VBA arbeiten möchtest, kannst du auch die Filterfunktion nutzen:
Daten > Filter.Diese Methode eignet sich besonders, wenn du nur einen bestimmten Bereich in Excel bearbeiten möchtest.
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.
Application.ScreenUpdating = False, um die Bildschirmaktualisierung während des Codes zu deaktivieren. Das verbessert die Performance.Excel Summewenn schriftfarbe rot, um nur bestimmte farbige Zellen zu bearbeiten, indem du die Bedingung im Code anpasst.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.