wenn ich in der aktiven Zelle bin, aber nur in der Spalte: "11(K)" soll
mir die Zeile bis Spalte "3 (C)" makiert werden.
Wenn ich in einer anderen Zelle bin soll die Makierung wegfallen.
Geht das ?
Gruß Walter mb
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Target.Column = 11 Then Exit Sub
Target.Offset(, -8).Range("A1:i1").Select
End Sub
Option Explicit
Dim RaBereich As Range
Dim StWert(9, 1) As String ' 0 Zelladresse; 1=Farbe der Zelle
Dim ByI As Byte
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Zurück
If Not Target.Column = 11 Then Exit Sub
Set RaBereich = Target.Offset(, -8).Range("A1:i1")
Auslesen
End Sub
Sub Zurück()
If RaBereich Is Nothing Then Exit Sub
For ByI = 1 To 9
If Range(StWert(ByI, 0)).Interior.ColorIndex = 4 Then
Range(StWert(ByI, 0)).Interior.ColorIndex = CInt(StWert(ByI, 1))
End If
Next ByI
End Sub
Sub Auslesen()
Dim Razelle As Range
ByI = 0
For Each Razelle In RaBereich.Cells
ByI = ByI + 1
StWert(ByI, 0) = Razelle.Address
StWert(ByI, 1) = Razelle.Interior.ColorIndex
If Razelle.Interior.ColorIndex = xlNone Then
Razelle.Interior.ColorIndex = 4
End If
Next Razelle
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
With Target
If .Column = 11 Then Range(Cells(.Row, 3), Cells(.Row, 11)).Select
End With
End Sub