¿Como validar un textbox para no ingresar datos vacíos en una hoja de datos en excel?

Estoy llevando un registro de datos en diferentes hojas de excel mediante y me fije que al presionar el botón insertar sin haber cargado datos en el userform me registra datos vacíos en la hoja lo cual no es viable a la hora de realizar una consulta. ¿Cómo puedo solucionarlo?

2 Respuestas

Respuesta
1

Esta macro valida los textbox si encuentra alguno vacío da por terminado el programa sin cargar los datos en la hoja

Private Sub CommandButton1_Click()
For Each Control In UserForm1.Controls
    TIPO = UCase(TypeName(Control))
    If TIPO = "TEXTBOX" Then
        If Control.Text = Empty Then
            End
 else
agregar codigo para cargar datos en la hoja de excel
        End If
    End If
Next
End Sub

¡Gracias! 

Disculpa también evalúa los combobox, si están vacíos??  escribo esta linea de código tal y como esta?  

If TIPO = "TEXTBOX" Then

Ya probé el código amigo, me funciona pero cuando le doy aceptar para llenar lo que quedo vacío cancela el programa y quisiera que se quedara en el userform para completar los campos en la base de datos.

Gracias.

La instrucción tal y como esta solo evalúa textbox para evaluar combobox y textbox la macro es esta

Private Sub CommandButton1_Click()
For Each Control In UserForm1.Controls
    TIPO = UCase(TypeName(Control))
    If TIPO = "COMBOBOX" Then
        If Control.ListIndex < 0 Then End
    Else
        'agregar codigo para cargar datos en la hoja de excel
    End If
    If TIPO = "TEXTBOX" Then
        If Control.Text = Empty Then
            End
        Else
            'agregar codigo para cargar datos en la hoja de excel
        End If
    End If
Next
End Sub

Perfecto gracias! 

El código me funciona perfectamente me detecta todo pero como te mencione anteriormente si localiza alguno vació al darle aceptar al msgbox se sale del programa no queda en el userform como tal para completar los datos y registrar... que puedo hacer?

Perdón!

Ya que ya entendí que hacer... Gracias cualquier duda te escribo.

Efectivamente se sale del programa amigo, que puedo hacer?

Si así esta programado eso lo mencione en la primera macro.

Busca las instruccions END que es la que te saca del formulario y pon en su lugar lo siguiente control. Setfocus esto te enviara al textbox o combobox vacío.

Muchas gracias hermano... Ya mismo arreglo eso! Si yo quisiera validar sólo algunos textbox y combobox como quedaría el código?? 

En vez de la macro anterior solo haces esto

if textbox1.text=empty then textbox1.setfocus
if textbox7.text=empty then textbox7.setfocus
if textbox15.text=empty then textbox15 setfocus
......
if combobox1.listindex<0 then combobox1.setfocus
if combobox2.listindex<0 then combobox2.setfocus
...
Respuesta
1

If textbox1= empty then exit sub

visita http://programarexcel.com descarga cientos de ejemplos gratis

Suscribe a https://www.youtube.com/channel/UCTKYXi9ljxxOAXXKgwWDDpQ y recibirás en tu mail todos los ejemplos que se vayan presentando

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas