Hej Peter,
Idéen med Application.Undo er egentlig meget godt tænkt, men i praksis er det ikke særlig god programmering.
Ved at foretage nedenstående rettelser vil det virke.
I toppen af THISWORKBOOK indsætter du denne kodestump.
Public oldVal As Variant
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
If ActiveSheet.Name <> "LogDetails" Then
If ActiveCell.Address <> Target.Address Then Exit Sub
oldVal = Target.Value
End If
End Sub
Koden gør i sin enkelthed det, at hver gang du aktiverer en celle, erklæres dens værdi som oldVal
Så behøver du ikke Application.Undo længere.
I din Workbook_SheetChange event, skal du derfor fjerne disse 3 linjer
Application.Undo
oldVal = Target.Value
Target = NewVal
//Allan