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

Wenn Zelle leer dann grau

Forumthread: Wenn Zelle leer dann grau

Wenn Zelle leer dann grau
28.10.2014 23:09:49
Ben
Hallo Zusammen, :)
ich würde gerne Zellen in der Range("C1:Z30") farbig markieren, wenn diese leer sind.
Normalerweise würde ich es über die bedingte Formatierung machen, aber ich möchte die Range gerne variabel gestalten.
In Zelle A1 steht die Anzahl der Zeilen bis wohin die Range nach unten gehen soll.
A1 = Anzahl2(B1:B200)
t = Range("A1")
Range("C1:Z" t)
Wie kann ich es mit VBA lösen, dass in dieser variablen Range, alle Zellen die leer sind, grau gefärbt werden? :)
leider fehlt mir hierbei jeglicher Ansatz :(
Ich hoffe, das ich mich verständlich ausgedrückt habe :)
Danke und Gruß
Ben

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Wenn Zelle leer dann grau
28.10.2014 23:36:16
{Boris}
Hi Ben,
Sub Til()
Dim C As Range
Range ("C1:Z" & Range("A1")).Interior.ColorIndex = xlNone
For Each C in Range ("C1:Z" & Range("A1"))
If C = "" Then C.Interior.ColorIndex = 48
Next C
End Sub
VG, Boris

AW: Wenn Zelle leer dann grau
29.10.2014 07:07:54
Uwe
Hallo Ben,
so was würde auch gehen:
Sub Til_2()
On Error Resume Next
With Range("C1:Z" & Range("A1").Value)
.Interior.ColorIndex = xlNone
.SpecialCells(xlCellTypeBlanks).Interior.ColorIndex = 48
End With
On Error GoTo 0
End Sub
Gruß Uwe
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

Infobox / Tutorial

Zellen grau färben, wenn sie leer sind


Schritt-für-Schritt-Anleitung

Um Zellen in einer variablen Range grau zu färben, wenn sie leer sind, kannst du VBA (Visual Basic for Applications) verwenden. Hier ist eine einfache Anleitung:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Klicke auf Einfügen und wähle Modul, um ein neues Modul zu erstellen.
  3. Füge den folgenden Code in das Modul ein:
Sub Til()
    Dim C As Range
    Range("C1:Z" & Range("A1")).Interior.ColorIndex = xlNone
    For Each C In Range("C1:Z" & Range("A1"))
        If C = "" Then C.Interior.ColorIndex = 48
    Next C
End Sub
  1. Schließe den VBA-Editor und gehe zurück zu Excel.
  2. Stelle sicher, dass in Zelle A1 die Anzahl der Zeilen steht, die du in der Range verwenden möchtest.
  3. Führe das Makro aus, um die Zellen in der angegebenen Range grau zu färben, wenn sie leer sind.

Häufige Fehler und Lösungen

  • Fehler: "Method 'Range' of object '_Global' failed"

    • Lösung: Überprüfe, ob in Zelle A1 eine gültige Zahl steht und dass die Range "C1:Z" korrekt definiert ist.
  • Fehler: Zellen färben sich nicht grau

    • Lösung: Stelle sicher, dass die Zellen tatsächlich leer sind und dass das Makro korrekt ausgeführt wird. Du kannst auch die Interior.ColorIndex-Werte anpassen.

Alternative Methoden

Eine alternative Methode zur Färbung von leeren Zellen ist die Verwendung von SpecialCells:

Sub Til_2()
    On Error Resume Next
    With Range("C1:Z" & Range("A1").Value)
        .Interior.ColorIndex = xlNone
        .SpecialCells(xlCellTypeBlanks).Interior.ColorIndex = 48
    End With
    On Error GoTo 0
End Sub

Diese Methode ist effizienter, da sie alle leeren Zellen auf einmal färbt.


Praktische Beispiele

Angenommen, du hast in Zelle A1 den Wert 10 eingetragen. Die Range, die du bearbeiten möchtest, ist dann "C1:Z10". Wenn einige dieser Zellen leer sind, wird das Makro die leeren Zellen grau einfärben.


Tipps für Profis

  • Du kannst die ColorIndex-Werte anpassen, um verschiedene Farben zu verwenden.
  • Experimentiere mit bedingter Formatierung in Kombination mit VBA, um komplexere Regeln zu erstellen, wenn du zum Beispiel unterschiedliche Farben für unterschiedliche Bedingungen benötigst.
  • Halte die VBA-Referenzen aktuell und nutze die Option Explicit-Anweisung, um sicherzustellen, dass alle Variablen deklariert sind.

FAQ: Häufige Fragen

1. Wie kann ich das Makro automatisch ausführen lassen? Du kannst das Makro in das Worksheet_Change-Ereignis einfügen, um es bei Änderungen der Daten auszuführen.

2. Funktioniert das auch in Excel Online? Leider unterstützt Excel Online keine VBA-Makros. Du musst die Desktop-Version von Excel verwenden.

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