ich benötige den Code, der folgendes aussagt:
wenn die aktive Zelle im Bereich A1:C5 liegt soll ein Makro starten.
Ungefähr so hab ich mir das vorgestellt:
If ActiveCell = "Bereich A1:C5" then "irgendwas"
ich benötige den Code, der folgendes aussagt:
wenn die aktive Zelle im Bereich A1:C5 liegt soll ein Makro starten.
Ungefähr so hab ich mir das vorgestellt:
If ActiveCell = "Bereich A1:C5" then "irgendwas"
im VBA ditor in die Tabelle bei auswahl der Zelle wird das Makro gestartet.
Gruß Hajo
sorry, war leider anderweitig beschäftigt.
Deine Lösung zu meinem Problem scheint nicht ganz zu funktionieren.
Ich bekomme immer die Fehlermeldung: End if ohne if-Block
Detailierte Problembeschreibung:
Ich markiere mehrere Zellen der Zelle, die die aktive Zelle beinhaltet durch folgende Private Sub:
Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
If [C1] = "Y" Then GoTo Ende
ActiveSheet.Unprotect ("andre")
Cells.FormatConditions.Delete
Dim lngRow As Long
lngRow = ActiveCell.Row
Range(Cells(lngRow, 4), Cells(lngRow, 12)).FormatConditions.Add Type:=xlCellValue, Operator:=xlNotEqual, _
Formula1:="=""iojöl89989k"""
Range(Cells(lngRow, 4), Cells(lngRow, 12)).FormatConditions(1).Interior.ColorIndex = 6
ActiveSheet.Protect ("andre")
Ende:
End Sub
Funktioniert alles. Ich versuche jetzt, dieses Makro nur aufzurufen, wenn sich die aktive Zelle im Bereich A1:C5 befindet.
Gruß Andre
ich sehe bei Deinem Code nicht den zusammenhang zu Deiner Aufgabenstellung im ersten Beitrag und meinem Code dazu.
Gruß Hajo
Trotzdem danke für deine Hilfe.
Hab den Code jetzt fertig, interessenhalber und der Vollständigkeit zuliebe stell ich die komplette Sub rein:
Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
If [C1] = "Y" Then GoTo Ende2
Set Bereich = Range("B7:F59")
If Intersect(Target, Bereich) Is Nothing Then GoTo Ende ' Abbruch, wenn Aktion nicht im Zielbereich
ActiveSheet.Unprotect ("andre")
Cells.FormatConditions.Delete
Dim lngRow As Long
lngRow = ActiveCell.Row
Range(Cells(lngRow, 2), Cells(lngRow, 6)).FormatConditions.Add Type:=xlCellValue, Operator:=xlNotEqual, _
Formula1:="=""iojöl89989k"""
Range(Cells(lngRow, 2), Cells(lngRow, 6)).FormatConditions(1).Interior.ColorIndex = 6
ActiveSheet.Protect ("andre")
Exit Sub
Ende:
If [C1] = "Y" Then GoTo Ende2
Set Bereich = Range("I7:L58")
If Intersect(Target, Bereich) Is Nothing Then Exit Sub ' Abbruch, wenn Aktion nicht im Zielbereich
ActiveSheet.Unprotect ("andre")
Cells.FormatConditions.Delete
Dim lngRow2 As Long
lngRow2 = ActiveCell.Row
Range(Cells(lngRow2, 9), Cells(lngRow2, 13)).FormatConditions.Add Type:=xlCellValue, Operator:=xlNotEqual, _
Formula1:="=""iojöl89989k"""
Range(Cells(lngRow2, 9), Cells(lngRow2, 13)).FormatConditions(1).Interior.ColorIndex = 6
ActiveSheet.Protect ("andre")
Ende2:
End Sub