Mejorar instrucción actual que se me vuelve a ejecutar cuando elimino un dato del Target

Tengo la siguiente instruccion de Private Sub Worksheet y deseo que me puedas colaborar en corregirle 2 cositas:

Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
On Error GoTo Error
Dim veces As Integer
f = ActiveCell.Row - 1
c = ActiveCell.Column
veces = Application.InputBox("Cuantas veces desea repetir el dato", "Repetir")
If Target.Column = 5 Then
For x = 1 To veces - 1
Target.Offset(x, 0).Value = Cells(f, c).Value
Next x
End If
Error:
Application.EnableEvents = True
End Sub

La instrucción funciona bien lo que sucede es que si yo cometo después de ejecutar la instrucción me doy cuanta que me equivoqué y voy a borrar el dato que habia escrito mal en la columna E osea la 5, pues cuando borro ese dato nuevamente se me ejecuta la instrucción entonces no se si halla alguna instrucción que se le pueda poner que para el caso de borrar datos ahi si no funcione la instrucción y no se active automaticamente. Esa es mi primera inquietud.
La segunda inquietud es si antes del "NEXT X" se le pueda poner un timer en donde dicho "Next x" se ejecute 1 segundo después.

Añade tu respuesta

Haz clic para o