I'd do something like this
Option Explicit Private Sub Worksheet_Change(ByVal Target As Range) Dim rCell As Range Dim vOldValue As Variant, vNewValue As Variant Set rCell = Target.Cells(1, 1) If Intersect(rCell, Range("C5:C14")) Is Nothing Then Exit Sub Application.ScreenUpdating = False Application.EnableEvents = False With rCell vNewValue = .Value Application.Undo vOldValue = .Value .Value = vNewValue If Len(vOldValue) > 0 Then .Offset(0, 1).Value = vOldValue Else .Offset(0, 1).ClearContents End If End With Application.EnableEvents = True Application.ScreenUpdating = True End Sub




Reply With Quote