VBA – Programmierung mit Excel Grundlagen
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
Seite 82<br />
Manipulation von Zellen und Zellbereichen<br />
10.9.3 Zuordnung von Farben<br />
Farben können an Schriften, Rahmen und Zellehintergrund zugeordnet werden. Die<br />
Zuordnung wird über die Eigenschaften COLOR oder COLORINDEX realisiert. Während die<br />
Eigenschaft COLORINDEX <strong>mit</strong> Indexwerten der EXCEL <strong>–</strong> Farbpaletten (Werte 1- 56) arbeitet<br />
und da<strong>mit</strong> einfacher in der Anwendung ist, erfordert die COLOR <strong>–</strong> Eigenschaft einen<br />
Farbcode für die sich aus Grundfarben zusammensetzenden Mischfarben.<br />
Das folgende, sehr einfach (und da<strong>mit</strong> etwas umständlich) programmierte Beispiel zeigt eine<br />
mögliche Anwendung:<br />
Sub Farbe1()<br />
Range("B1:B5").Interior.ColorIndex = 17<br />
End Sub<br />
Sub Farbe2()<br />
Range("B3").Activate<br />
Farbe = ActiveCell.Interior.ColorIndex<br />
If Farbe = 17 Then<br />
With ActiveCell<br />
.Interior.ColorIndex = 28<br />
.Offset(-1, 0).Interior.ColorIndex = xlNone<br />
.Offset(1, 0).Interior.ColorIndex = xlNone<br />
.Borders.LineStyle = xlDouble<br />
.Borders.ColorIndex = 25<br />
End With<br />
End If<br />
End Sub<br />
In der Sub FARBE1 wird einem Zellbereich eine Hintergrundfarbe zugeordnet.<br />
In der Sub FARBE2 wird eine Zelle aktiviert und deren Hintergrundfarbe er<strong>mit</strong>telt. Der<br />
Indexwert wird der Variablen Farbe zugewiesen. Ist der Indexwert = 17, so wird die<br />
Hintergrundfarbe verändert, der Zelle ein Farbiger doppelter Rahmen zugeordnet und die<br />
Hintergrundfarbe der beiden darüber und darunter liegenden Zellen gelöscht.<br />
Die COLOR <strong>–</strong> Eigenschaft arbeitet <strong>mit</strong> Mischfarben, die durch Codes für die Farben Rot, Grün<br />
und Blau definiert werden. Gearbeitet wird dabei <strong>mit</strong> dem RGB <strong>–</strong> Farbsystem, welches <strong>mit</strong><br />
Wert zwischen 0 und 255 für die Grundfarben arbeitet. <strong>VBA</strong> besitzt für diesen Zweck eine<br />
eigene RGB <strong>–</strong> Funktion <strong>mit</strong> der allgemeinen Syntax:<br />
RGB(Rot, Grün, Blau)<br />
Die Farbe Rot kann beispielsweise zugeordnet werden <strong>mit</strong>:<br />
RGB(255,0,0)<br />
Die gemischten Farben können sowohl Hintergründen als auch Rahmen und Schriften<br />
zugeordnet werden, wie das nachfolgende Beispiel zeigt:<br />
<br />
With ActiveCell<br />
.Interior.Color = RGB(125, 200, 20)<br />
.Offset(-1, 0).Interior.ColorIndex = xlNone<br />
.Offset(1, 0).Interior.ColorIndex = xlNone<br />
.Borders.LineStyle = xlContinuous<br />
.Borders.Color = RGB(30, 160, 120)<br />
.Font.Color = RGB(130, 0, 150)<br />
End With