Forzar rellenar una celda para ejecutar macro

Tengo ya desarrolada una macro que me ejecuta una determianda acción. Necesito que en el momento de ejecutar la macro vaya a la celda A1 y compruebe si hay algún dato. Si existe el dato, entonces que la macro se ejecute y si no existe dato que me obligue a introducir algún dato para que se pueda ejecutar la macro.

1 respuesta

Respuesta
1

Podrías tener otra macro de llamada como la del ejemplo:

Sub llamada()
'x Elsamatilde
'controlar si en A1 existe un dato
If [A1] <> "" Then
    Call mi_macro    'nombre de la macro ya desarrollada
Else
    MsgBox "Falta completar la celda A1.", , "Atención"
    [A1].Select
End If
End Sub

Desde donde se llama a la que ya tenés desarrollada siempre y cuando la celda A1 de la hoja activa no esté vacía.

Si se trata de la celda de otra hoja debes anteponer su nombre, por ej: 

Sheets("resumen").[A1]

También podrías incluir el control dentro de tu misma macro, por ejemplo:

Sub mi_Macro()
'controlar si en A1 existe un dato
If [A1] = "" Then
    MsgBox "Falta completar la celda A1.", , "Atención"
    [A1].Select
    Exit Sub
End If
'a continuación el resto de tu macro ya desarrollada
End Sub

Nuevamente considera si estás en la hoja correcta sino antepone el nombre de la misma.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas