Al no llenarse un campo en un userform salga un msgbox

Tengo una macro con un userform en el cual el usuario llena unos campos que después se ingresan a una hoja de excel. Mi problema es que para uno de esos campos, necesito que si se deja en blanco aparezca un msgbox y se vuelva a poner el cursos en el textbox. Lo he intentado con if pero al darle aceptar al msgbox simplemente sigue y deja que se ejecute todo. Intente copn do while, do until y se me queda en un ciclo infinito. La idea es que después de que aparezca el msgbox la persona pueda ingresar info en el textbox pero el loop no deja entonces siempre lo considera vacío y por eso se queda ejecutando el ciclo por siempre.

1 respuesta

Respuesta
1

Esta es una opción, cuando intentan salirse del textbox1 y no tiene datos:

Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
'Por.Dante Amor
    If TextBox1 = "" Then
        MsgBox "Capturar datos en el textbox1", vbExclamation
        Cancel = True
    End If
End Sub

Si lo quieres hacer en un botón:

Private Sub CommandButton1_Click()
'Por.Dante Amor
    If TextBox1 = "" Then
        MsgBox "Capturar datos en el textbox1", vbExclamation
        TextBox1.SetFocus
        Exit Sub
    End If
    '
    If TextBox2 = "" Then
        MsgBox "Capturar datos en el textbox2", vbExclamation
        TextBox2.SetFocus
        Exit Sub
    End If
    '
    'Aquí debe continuar tu código
    '
End Sub


Prueba con las 2 opciones.

Saludos. Dante Amor

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas