Llenar campos obligatorios para ejecutar una macro...
Tengo esta macro en la cual me guarda la información de algunas celdas que se llenan, pero quisiera que no me permita ejecutar la macro si alguna de esas celdas no están llenas.
Sub CREA_NUEVO_CLIENTE() ' ' CREA_NUEVO_CLIENTE Macro ' AGREGA NUEVO CLIENTE ' ' Acceso directo: Ctrl+Mayús+A Application.ScreenUpdating = False Sheets("CLIENTES REGISTRADOS ").Unprotect password:="28021990" Application.ScreenUpdating = False 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 Sheets("CLIENTES REGISTRADOS ").Protect password:="28021990" Application.ScreenUpdating = False End Sub
tenia este codigo:
if range("D7")<>"" AND range("D9")<>"" AND range("D10")<>""AND range("D11")<>""AND range("D12")<>"" then
'SE ejecuta mi operación
else
msgbox("error!!!")
end if
Si me funciona si no estan llenas la celdas, pero al llenar la celdas me sale un mensaje de error porque no coincide los tipos.. Orienten-me en donde ando mal.
Respuesta de Dante Amor
2