19.10.2015, 07:04
Liebes Forum,
folgenden Code habe ich mit einiger Hilfe so hinbekommen, dass er in excel 2010 und 2013 genau das tut was er soll.
Leider klappt es in 2007 noch nicht so ganz. Ich verstehe aber nicht warum. Kann mir jemand einen Stoss in die richtige Richtung geben?
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Z As Long
If Target.Count = 1 Then
If Not Intersect(Range("I11:I1000"), Target) Is Nothing Then
ActiveSheet.Unprotect "heute"
Application.EnableEvents = False
Target.Offset(0, 1).Value = VBA.Date
Application.EnableEvents = True
ActiveSheet.Protect "heute"
Else
If Not Intersect(Target, Range("W11:W1000")) Is Nothing Then
ActiveSheet.Unprotect "heute"
Application.EnableEvents = False
Target.Offset(0, 1) = Target.Offset(0, 1) + 1
ActiveSheet.Protect "heute"
If Intersect(Target, Range("W11:W1000")) Is Nothing Then Exit Sub
ActiveSheet.Unprotect "heute"
With Sheets("CustomerVisits")
Z = .Range("G1")
.Range("G1") = .Range("G1") + 1
.Range("A" & Z) = Target.Value
.Range("B" & Z) = Target.Offset(0, -18).Value
.Range("C" & Z) = Target.Offset(0, -20).Value
End With
Application.EnableEvents = True
ActiveSheet.Protect "heute"
End If
End If
End If
End Sub
Vielen Dank und liebe Gruesse,
Christoph
folgenden Code habe ich mit einiger Hilfe so hinbekommen, dass er in excel 2010 und 2013 genau das tut was er soll.
Leider klappt es in 2007 noch nicht so ganz. Ich verstehe aber nicht warum. Kann mir jemand einen Stoss in die richtige Richtung geben?
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Z As Long
If Target.Count = 1 Then
If Not Intersect(Range("I11:I1000"), Target) Is Nothing Then
ActiveSheet.Unprotect "heute"
Application.EnableEvents = False
Target.Offset(0, 1).Value = VBA.Date
Application.EnableEvents = True
ActiveSheet.Protect "heute"
Else
If Not Intersect(Target, Range("W11:W1000")) Is Nothing Then
ActiveSheet.Unprotect "heute"
Application.EnableEvents = False
Target.Offset(0, 1) = Target.Offset(0, 1) + 1
ActiveSheet.Protect "heute"
If Intersect(Target, Range("W11:W1000")) Is Nothing Then Exit Sub
ActiveSheet.Unprotect "heute"
With Sheets("CustomerVisits")
Z = .Range("G1")
.Range("G1") = .Range("G1") + 1
.Range("A" & Z) = Target.Value
.Range("B" & Z) = Target.Offset(0, -18).Value
.Range("C" & Z) = Target.Offset(0, -20).Value
End With
Application.EnableEvents = True
ActiveSheet.Protect "heute"
End If
End If
End If
End Sub
Vielen Dank und liebe Gruesse,
Christoph