ich möchte in meiner Tabelle alle Zellen (D6:GC110) mit folgenden Werten über VBA farbig markieren:
SC = Grün
SU = Gelb
U = Gelb
K = Blau
E = Grau
Ü = Lila
kann mir dabei jemand helfen?
Danke und Gruß Markus
Sub farbe()
Dim Zelle as Range, Bereich as Range
Set Bereich = Range("D6:GC110")
For each Zelle In Bereich
Select Case Zelle.Value
Case "SC":
Zelle.Interior.ColorIndex = 4
Case "SU":
Zelle.Interior.ColorIndex = 4
u.s.w. Die Farbenindexnummern, kannst du dir über den Makrorecorder holen. Einfach Makro _
aufzeichnen und zelle mit entsprechender Füllfarbe versehen und dann nachschauen und als Case: vor End Select analog dem Beispiel einfügen (Ich hab die jetzt nicht alle im Kopf)
End Select
Next Zelle
End Sub
Gruß
Chris
Option Explicit
Sub Ostern()
Dim N, Zelle, W, F
W = Array("SC", "SU", "U", "K", "E", "U")
F = Array(3, 5, 7, 34, 12, 6)
For Each Zelle In Range("D6:GC110")
For N = 0 To UBound(W)
If Zelle = W(N) Then
Zelle.Interior.ColorIndex = F(N)
Exit For
End If
Next N
Next Zelle
End Sub
Sub Farbwert()
Dim F
For F = 1 To 56
Cells(F, 1).Interior.ColorIndex = F
Next F
End Sub
Um in Excel Zellen mit bestimmten Werten farbig zu markieren, kannst Du ein VBA-Makro verwenden. Folge diesen Schritten:
Öffne Excel und drücke ALT + F11
, um den VBA-Editor zu öffnen.
Klicke auf Einfügen
und wähle Modul
, um ein neues Modul zu erstellen.
Füge den folgenden Code ein:
Sub farbe()
Dim Zelle As Range, Bereich As Range
Set Bereich = Range("D6:GC110")
For Each Zelle In Bereich
Select Case Zelle.Value
Case "SC":
Zelle.Interior.ColorIndex = 4 ' Grün
Case "SU":
Zelle.Interior.ColorIndex = 6 ' Gelb
Case "U":
Zelle.Interior.ColorIndex = 6 ' Gelb
Case "K":
Zelle.Interior.ColorIndex = 5 ' Blau
Case "E":
Zelle.Interior.ColorIndex = 15 ' Grau
Case "Ü":
Zelle.Interior.ColorIndex = 13 ' Lila
End Select
Next Zelle
End Sub
Schließe den VBA-Editor und kehre zu Excel zurück.
Drücke ALT + F8
, wähle das Makro farbe
aus und klicke auf Ausführen
.
Mit diesem Makro kannst Du die Hintergrundfarbe der Zellen in dem angegebenen Bereich entsprechend dem Wert in der Zelle ändern.
Fehler: "Laufzeitfehler 1004"
D6:GC110
) korrekt ist und ob Du die richtigen Berechtigungen hast, um Makros auszuführen.Fehler: Die Farben werden nicht geändert
Wenn Du die Zellen ohne VBA einfärben möchtest, kannst Du auch die bedingte Formatierung verwenden:
D6:GC110
.Start
> Bedingte Formatierung
> Neue Regel
.Regel zur Verwendung einer Formel zur Ermittlung der zu formatierenden Zellen
.=D6="SC"
Formatieren
, wähle die gewünschte Farbe aus und bestätige.Wiederhole diesen Vorgang für jede Bedingung, die Du hinzufügen möchtest.
Hier sind zwei Beispiele, wie Du VBA verwenden kannst, um die Hintergrundfarbe basierend auf bestimmten Werten zu ändern:
Beispiel für Farben nach Wert:
Sub Farbwert()
Dim F
For F = 1 To 56
Cells(F, 1).Interior.ColorIndex = F
Next F
End Sub
Beispiel für benutzerdefinierte Zuweisung:
Sub Ostern()
Dim N, Zelle, W, F
W = Array("SC", "SU", "U", "K", "E", "Ü")
F = Array(4, 6, 6, 5, 15, 13) ' Beispiel: Farbindex
For Each Zelle In Range("D6:GC110")
For N = 0 To UBound(W)
If Zelle = W(N) Then
Zelle.Interior.ColorIndex = F(N)
Exit For
End If
Next N
Next Zelle
End Sub
RGB
-Funktion verwenden, um spezifischere Farben zu definieren, z.B. Zelle.Interior.Color = RGB(255, 0, 0)
für Rot..xlsm
-Format, um die Makros zu behalten.1. Wie kann ich die Hintergrundfarbe einer Zelle ändern, wenn der Wert "A" ist?
Du kannst das Makro anpassen, indem Du einen weiteren Case
im Select Case
-Block hinzufügst.
2. Was ist der Unterschied zwischen ColorIndex
und Color
?
ColorIndex
verwendet vordefinierte Farbnummern, während Color
die RGB-Werte verwendet, um eine Farbe präzise zu definieren.
Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden
Suche nach den besten AntwortenEntdecke unsere meistgeklickten Beiträge in der Google Suche
Top 100 Threads jetzt ansehen