Target.Locked
12.11.2005 09:11:31
Thomas
Ein Anwender sollte eine Zelle variabel überschreiben können. In der Zelle ist eine Formel. Will er aber einen anderen Wert (Summe) eingeben, wird dieser Wert überschrieben. Es muss jedoch vorher eine Warnung erfolgen. Dacht mir etwa so:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Bereich
Dim lZeile As Integer
lZeile = Range("A65536").End(xlUp).Row
Set Bereich = Range("M5:M" & lZeile)
If Intersect(Target, Bereich) Is Nothing Then
Else
msg = MsgBox("Sie versuchen eine Formel zu überschreiben. Wollen Sie das ?", 4, "WARNUNG")
If msg = 7 Then
ActiveSheet.Unprotect "123"
Target.Offset(0, 0).Select
ActiveCell.FormulaR1C1 = _
"=IF(RC[-5]<>"""",ROUNDDOWN(RC[-2]/100*RC[-2]/100*RC[-5],-1),"""")"
ActiveSheet.Protect "123"
Exit Sub
End If
End If
End Sub
Gibt aber eine Endlosschlaufe, weil ja immer wieder die Formel eingeschrieben wird. Kann mir jemand helfen?
Danke und liebe Grüsse
Thomas