¿Cómo puedo hacer validación de datos al ejecutar una macros de guardado?
Tengo una macro en una hoja llamada NUEVO CLIENTE que guarda infroamcion en otra hoja llamada CLIENTES REGISTRADOS.
Application.ScreenUpdating = False
Sheets("CLIENTES REGISTRADOS ").Unprotect password:="28021990"
Application.ScreenUpdating = False
If Not IsError(Range("D7")) And Not IsError(Range("D9")) And _
Not IsError(Range("D10")) And Not IsError(Range("D12")) Then
If Range("D7") <> "" And Range("D9") <> "" And Range("D10") <> "" And Range("D12") <> "" Then
If estado < 2 Then
MsgBox "NO HA SALIDO EL SERVICIO", vbOKOnly + vbInformation, "NO SE PUEDE AGREGAR CLIENTE"
Exit Sub
End If
'dejo la variable en 0 porque ya se cumplieron todos los procesos
estado = 0
Range("D4").Select
Selection.Copy
Sheets("CLIENTES REGISTRADOS ").Select
Range("D4002").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=True
Sheets("NUEVO CLIENTE").Select
Range("D6").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("CLIENTES REGISTRADOS ").Select
Range("B4002").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=True
Sheets("NUEVO CLIENTE").Select
Range("D7:D12").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("CLIENTES REGISTRADOS ").Select
Range("E4002").Select
Range("E4002").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=True
Range("Tabla3").Select
Range("B4002").Activate
Application.CutCopyMode = False
ActiveWorkbook.Worksheets("CLIENTES REGISTRADOS ").ListObjects("Tabla3").Sort. _
SortFields.Clear
ActiveWorkbook.Worksheets("CLIENTES REGISTRADOS ").ListObjects("Tabla3").Sort. _
SortFields.Add Key:=Range("Tabla3[FECHA DE REGISTRO]"), SortOn:= _
xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("CLIENTES REGISTRADOS ").ListObjects("Tabla3"). _
Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
Application.ScreenUpdating = False
End With
Range("B2").Select
Sheets("NUEVO CLIENTE").Select
Range("D4:D5").Select
Selection.ClearContents
Range("D7").Select
Selection.ClearContents
Range("D9:D12").Select
Selection.ClearContents
Range("D4").Select
Application.ScreenUpdating = False
Else
MsgBox "Faltan DATOS del cliente", vbCritical, "ERROR AL REGISTRAR CLIENTE"
End If
Else
'
MsgBox "La celdas tienen error"
'
End If
Application.ScreenUpdating = False
Sheets("CLIENTES REGISTRADOS ").Protect password:="28021990"
Application.ScreenUpdating = False
End Sub
En la celda D6 de la hoja NUEVO CLIENTE se agrega solo números osea simulado un teléfono quisiera saber como No permitir que si ese numero que esta en la celda D6 ya esta registrado no volver a registrar... Lo hice con una fórmula en validación de datos pero no me funciona cuando ejecuta la macro solo me sale error y me permite guardar..