Farben werden in Excel eingesetzt, um bestimmte Bereiche einer Tabelle hervorzuheben. In Excel wird die Hintergrundfarbe über die Anweisungen “Zellen formatieren / Ausfüllen” ausgewählt. Ebenso können Schriftfarben und Rahmenfarben festgelegt werden.
In diesem Beitrag geht es um die Farbgestaltung mit VBA-Anweisungen.
1. Farben mit der Eigenschaft “Color” einsetzen
Zunächst einmal stehen in VBA diese 8 Standardfarben zur Verfügung:
- rot (vbRed)
- blau (vbBlue)
- grün (vbGreen)
- schwarz (vbBlack)
- weiß (vbWhite)
- gelb (vbYellow)
- Magenta (vbMagenta)
- Cyan (vbCyan)
Die Standardfarben rufst Du mit “Color” auf.
Den Hintergrund einer Zelle bezeichnest Du mit der Anweisung “Interior”, einen Rahmen mit “Borders” und die Schrift mit “Font”.
Für die Beispiele in diesem Beitrag verwende z.B. eine einfache Personalliste.
Zelle B3 soll einen gelben Hintergrund, Zelle C5 einen roten Rahmen und Zelle D7 eine Schrift in Magenta erhalten.
Schreibe dazu dieses Makro:
Sub Farbe1()
Range(“B3”).Interior.Color=vbYellow
Range(“C5”).Borders.Color=vbRed
Range(“D7”).Font.Color=vbMagenta
End Sub
Nach dem Makro-Lauf sieht die Tabelle so aus:
2. Farben mit der Eigenschaft “ColorIndex” einsetzen
Wenn Du mit dem ColorIndex arbeiten möchtest, musst Du natürlich wissen, welcher Index welche Farbe verkörpert. Mit der Anweisung ColorIndex kannst Du auf 56 Farben zurück greifen.
Du findest hierzu im Internet zahlreiche Beispiele, kannst Dir eine solche Übersicht aber auch selbst erstellen.
Erstelle Dir eine solche Tabelle mit den 56 Indizes:
Schreibe nun diese Makro in ein Modul:
Sub Farbpalette()
Dim i As Integer
For i=1 To 14
Cells(2+i,3).Interior.ColorIndex = i
Next i
For k=15 To 28
Cells(2+k-14,6).Interior.ColorIndex = k
Next k
For l= 29 To 42
Cells(2+l-28,9).Interior.ColorIndex = l
Next l
For m=43 To 56
Cells(2+m-42,12).Interior.ColorIndex = m
Next m
End Sub
Deine zuvor erstellte Tabelle ist nun mit den Farbmustern gefüllt.
Obwohl in der Tabelle die Hintergrundfarben (Interior) gezeigt werden, treffen sie ebenso auf Rahmen (Borders) und Schriftfarbe (Font) zu.
Bezogen auf die Personalliste arbeitest Du jetzt mit diesem Makro:
Sub Farbe2()
Range(“B3”).Interior.ColorIndex=27
Range(“C5”).Borders.ColorIndex=3
Range(“D7”).Font.ColorIndex=26
End Sub
Nun sieht die Liste, die dem Beispiel mit “Color” zumindest sehr ähnelt, so aus:
3. Farben mit dem Farbmodell RGB bestimmen
Die Farbbestimmung nach RGB führst Du in Excel durch, indem Du eine Zelle markierst, dann “Zellen formatieren / Ausfüllen /Weitere Farben /Benutzerdefiniert” aufrufst und Werte für die Farben rot, grün und blau bestimmst. Diese können von 0 bis 255 reichen.
Für die Farbe 3 aus der ColorIndex-Palette z.B. ist dies die Einstellung:
Mit einem Makro kannst Du zu den Rot-Grün-Blau-Einstellungen die Farben ausgeben lassen.
Sub Farbe3()
Dim i As Integer
For i=1 To 56
Cells(i+3,6).Interior.Color=RGB(Cells(i+3,2),Cells(i+3,3),Cells(i+3,4))
Next i
End Sub
Hier ein Auszug aus dem Ergebnis:
Wenn die RGB-Werte bekannt sind, setzt dieses Makro die Wünsche um:
Sub Farbe4()
Range(“K20”).Interior.Color=RGB(0,128,128)
Range(“K25”).Borders.Color=RGB(153,15,102)
Range(“K30”).Font.Color=RGB(51,51,153)
End Sub
Ergebnis:
Eine Datei mit den RGB-Farben findest Du hier: VBA_RGB-Farben
Entdecke mehr von Clevercalcul
Subscribe to get the latest posts sent to your email.
Your point of view caught my eye and was very interesting. Thanks. I have a question for you.
What is your question please?