** NORMAS DEL FORO **
Inicio del foro Inicio del foro > Access y VBA > Access y VBA
  Mensajes nuevos Mensajes nuevos RSS - Como activar modulo CampoVacio
  Preguntas frecuentes Preguntas frecuentes  Buscar en el foro   Eventos   Registro Registro  Iniciar sesion Iniciar sesion

Como activar modulo CampoVacio

 Responder Responder
Autor
Mensaje
alfare Ver desplegable
Colaborador
Colaborador
Avatar

Unido: 28/Junio/2006
Localización: Colombia
Estado: Sin conexión
Puntos: 625
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita alfare Cita  ResponderRespuesta Enlace directo a este mensaje Tema: Como activar modulo CampoVacio
    Enviado: 20/Mayo/2020 a las 15:31
Buen dia Estimados:
He encontrado este código que me puede ser útil para algo que busco:

Public Function CampoVacio(NomForm As Form, Cancel As Integer) As Boolean
' Codigo para impedir una accion . . . !!
' si existiese  algun campo vacio
On Error GoTo Err_CampoVacio_Click
Dim campo As Control 'Variable tipo control
For Each campo In NomForm 'Abro un Bucle
 ' Inpido los tipos de campo que deseo recorrer para analizar
    If TypeOf campo Is TextBox Or TypeOf campo Is ComboBox Or TypeOf campo Is ListBox Then
        If Left(campo.Name, 2) <> "ID" And campo.Properties("Enabled") = True Then
            If Not IsNull(campo) Then 'La condicion
                    campo.BackColor = vbWhite 'se establece fondo blanco
                    'De no haber campo nulo dejo correr el codigo
                Else
                    campo.BackColor = vbYellow 'Le pongo color para diferenciarlo
                    campo.SetFocus
                    MsgBox "Para realizar esta Accion " & vbCrLf & _
                    "se requiere un valor para " & campo.Name _
                    , vbExclamation, "Campo Vacio"
                    Cancel = True
                    End
                    Exit Function
                    'Si lo encuentro, detengo el codigo, aviso con un Msgbox
                    'y Situo el setfocus al campo vacio
            End If
        End If
    End If
Next campo
'Si llegamos aqui es que no consigo campos nulos
'Y ejecuto el comando (Puedes colocar cualquiera)
'Abrir form, consultas, exportar a pdf, etc....
CampoVacio = False
Exit_CampoVacio_Click: 'Tratamiento de errores
    Exit Function
Err_CampoVacio_Click:
    MsgBox Err.Description
    Resume Exit_CampoVacio_Click
        
End Function


No soy muy hábil en VBA y me gustaría saber como activo este modulo al  abrir un formulario y que cumpla su función, Excusen mi pregunta si incomodo al alguien.
Saludos
Slds desde Cali Colombia
Arriba
xavi Ver desplegable
Administrador
Administrador
Avatar
Terrassa-BCN

Unido: 10/Mayo/2005
Localización: Catalunya ||||
Estado: Sin conexión
Puntos: 12945
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita xavi Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 20/Mayo/2020 a las 15:50
Casi seguro que ahí dónde lo hayas encontrado habrá algo de explicación...

Creo que no lo puedes activar al abrir el formulario. Más bien se trata de una función que impedirá salvar los datos. Yo utilizaria el BeforeUpdate del formulario

Xavi, un minyó de Terrassa

Mi web
Arriba
rokoko Ver desplegable
Colaborador
Colaborador
Avatar

Unido: 16/Febrero/2008
Localización: Pamplona
Estado: Sin conexión
Puntos: 2529
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita rokoko Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 20/Mayo/2020 a las 15:51
Ponlo en el evento antes de actualizar del formulario, creo que asi te ira. Pasale como parámetro en nombre del formulario. Tambien fijate que en el codigo verifica que tipos de campo verifica si estan vacios Saludos
Arriba
 Responder Responder
  Compartir tema   

Ir al foro Permisos de foro Ver desplegable