Mehrere Zellen nach Änderung färben

Bild

Betrifft: Mehrere Zellen nach Änderung färben
von: Gregor
Geschrieben am: 12.10.2015 16:53:18

Hallo mit einander!
Nach der Suche nach Lösungen in VBA habe ich hier immer wieder hilfreiche Ansätze mit google gefunden.
Deswegen wende ich mich auch jetzt hier für eure Hilfe.
Folgendes: Es geht mir um das einfärben von mehreren Zellen. Aktuell arbeite ich mit Select Case und Worksheet_Change. Steht ein gewisser Wert in Spalte D, soll Spalte A,B und D eingefärbt werden. Funktioniert auch, nur sobald in Spalte D mehrere Zeilen eingefügt werden, wird natürlich nur die erste Zelle eingefärbt.
Gibt es hier eine einfache Lösung bzw. habt hier einen Tipp? Hab zwar was mit worksheet_calculate gefunden aber komme damit auf keinen grünen Zweig.
Besten Dank, lg Gregor

Bild

Betrifft: AW: Mehrere Zellen nach Änderung färben
von: Nepumuk
Geschrieben am: 12.10.2015 17:04:36
Hallo,
zeig mal deinen Code.
Gruß
Nepumuk

Bild

Betrifft: AW: Mehrere Zellen nach Änderung färben
von: Gregor
Geschrieben am: 12.10.2015 19:33:22
Hi,
hier der Code. Bitte nicht rügen, bin mit VBA noch nicht so gut unterwegs.
Danke, Gregor

Private Sub Worksheet_Change(ByVal Target As Range)
Dim Bereich As Range
Set Bereich = Intersect(Target, Range("D9:AA50,D62:AA103,D115:AA156,D168:AA209,D221:AA262,D274: _
AA315,D327:AA368,D380:AA421,D433:AA474,D486:AA527,D539:AA580,D592:AA633"))
If Not Bereich Is Nothing Then
'Mitarbeiter1
Select Case Cells(Target.Row, "F").Value
Const Von1 As String = "D"
Const Bis1 As String = "F"
Case Sheets("Einstellungen").Range("B16")
    Range(Cells(Target.Row, Von1), Cells(Target.Row, Bis1)).Interior.ColorIndex = Sheets(" _
Einstellungen").Range("C16")
Case Sheets("Einstellungen").Range("B17")
    Range(Cells(Target.Row, Von1), Cells(Target.Row, Bis1)).Interior.ColorIndex = Sheets(" _
Einstellungen").Range("C17")
Case Sheets("Einstellungen").Range("B18")
    Range(Cells(Target.Row, Von1), Cells(Target.Row, Bis1)).Interior.ColorIndex = Sheets(" _
Einstellungen").Range("C18")
Case Sheets("Einstellungen").Range("B19")
    Range(Cells(Target.Row, Von1), Cells(Target.Row, Bis1)).Interior.ColorIndex = Sheets(" _
Einstellungen").Range("C19")
Case Sheets("Einstellungen").Range("B20")
    Range(Cells(Target.Row, Von1), Cells(Target.Row, Bis1)).Interior.ColorIndex = Sheets(" _
Einstellungen").Range("C20")
Case Sheets("Einstellungen").Range("B21")
    Range(Cells(Target.Row, Von1), Cells(Target.Row, Bis1)).Interior.ColorIndex = Sheets(" _
Einstellungen").Range("C21")
Case Sheets("Einstellungen").Range("B22")
    Range(Cells(Target.Row, Von1), Cells(Target.Row, Bis1)).Interior.ColorIndex = Sheets(" _
Einstellungen").Range("C22")
Case Sheets("Einstellungen").Range("B23")
    Range(Cells(Target.Row, Von1), Cells(Target.Row, Bis1)).Interior.ColorIndex = Sheets(" _
Einstellungen").Range("C23")
    Range(Cells(Target.Row, "D"), Cells(Target.Row, "E")).Interior.ColorIndex = 19
Case Sheets("Einstellungen").Range("B24")
    Range(Cells(Target.Row, Bis1), Cells(Target.Row, Bis1)).Interior.ColorIndex = Sheets(" _
Einstellungen").Range("C24")
    Range(Cells(Target.Row, "D"), Cells(Target.Row, "E")).Interior.ColorIndex = 19
Case Sheets("Einstellungen").Range("B25")
    Range(Cells(Target.Row, Bis1), Cells(Target.Row, Bis1)).Interior.ColorIndex = Sheets(" _
Einstellungen").Range("C25")
    Range(Cells(Target.Row, "D"), Cells(Target.Row, "E")).Interior.ColorIndex = 19
Case Sheets("Einstellungen").Range("B26")
    Range(Cells(Target.Row, Bis1), Cells(Target.Row, Bis1)).Interior.ColorIndex = Sheets(" _
Einstellungen").Range("C26")
    Range(Cells(Target.Row, "D"), Cells(Target.Row, "E")).Interior.ColorIndex = 19
Case Sheets("Einstellungen").Range("B27")
    Range(Cells(Target.Row, Bis1), Cells(Target.Row, Bis1)).Interior.ColorIndex = Sheets(" _
Einstellungen").Range("C27")
    Range(Cells(Target.Row, "D"), Cells(Target.Row, "E")).Interior.ColorIndex = 19
Case Sheets("Einstellungen").Range("B28")
    Range(Cells(Target.Row, Bis1), Cells(Target.Row, Bis1)).Interior.ColorIndex = Sheets(" _
Einstellungen").Range("C28")
    Range(Cells(Target.Row, "D"), Cells(Target.Row, "E")).Interior.ColorIndex = 19
Case Else
    Range(Cells(Target.Row, "D"), Cells(Target.Row, "E")).Interior.ColorIndex = 19
    Range(Cells(Target.Row, "F"), Cells(Target.Row, "F")).Interior.ColorIndex = 0
End Select
Select Case Cells(Target.Row, "D").Value
Case ""
    Range(Cells(Target.Row, "D"), Cells(Target.Row, "E")).Interior.Color = RGB(217, 217, 217)
End Select
End If
End Sub    


 Bild

Beiträge aus den Excel-Beispielen zum Thema "Mehrere Zellen nach Änderung färben"