Access - VALIDAR ESPACIOS EN BLANCO

 
Vista:

VALIDAR ESPACIOS EN BLANCO

Publicado por ELTREMEN (4 intervenciones) el 27/09/2006 21:29:15
TENGO ESTE CODIGO, Y DESEO 2 COSAS, ESPERO Y ME PUEDAN AYUDAR,
LA 1ERA. QUE NO SE PUEDA DAR CLIC AL BOTON DE GUARDAR HASTA QUE ESTEN TODOS LOS CAMPOS LLENOS

2DA. Y LA SEGUNDA QUE AL MOMENTO DE CARGAR EL FORMULARIO ESTE DESABILITADO EL BOTON DE GUARDAR HASTA QUE EXISTAN DATOS

Private Sub Guardar_Click()
On Error GoTo Err_Guardar_Click

DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70

MsgBox "Registro insertado", vbInformation, "OK"
Dim Control As Control

For Each Control In Me.Controls
If TypeOf Control Is TextBox Then
Control.Value = ""
End If
If TypeOf Control Is CheckBox Then
Control.Value = False
End If
If TypeOf Control Is ComboBox Then
Control.Value = ""
End If
Next

Exit_Guardar_Click:
Exit Sub

Err_Guardar_Click:
MsgBox Err.Description
Resume Exit_Guardar_Click

End Sub
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:VALIDAR ESPACIOS EN BLANCO

Publicado por mi menda (2 intervenciones) el 29/09/2006 04:12:00
Para deshabilitar el boton al cargar el form, En el evento al cargar

Me.Guardar.Enabled = False

Para lo otro puedes crear un procedimiento

Private Chequear_datos ()
If Campo1 And Campo2 And Campo3 And Campo4 And etc Then
Me.Guardar.Enabled = True
End If
End Sub
Puedes llamar al procedimiento desde el evento al cambiar, o después de actualizar de cada control

Supongo que se puede mejorar el código del procedimiento, pero yo no se mucho de VBA. Pero queda la ídea.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:VALIDAR ESPACIOS EN BLANCO

Publicado por Moises (75 intervenciones) el 04/10/2006 16:20:13
Wenas !!!

Lo que ha dicho El Menda está bien, pero tiene la peculariedad que cada vez que insertes un campo tendrás que agregarlo a código. Pero repito es una solucion correcta.

A la funcion que tu tienes puedes agregarle esto !!

Private Sub Guardar_Click()
On Error GoTo Err_Guardar_Click

DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70

MsgBox "Registro insertado", vbInformation, "OK"
Dim Control As Control

'AQUI !!
Dim intContador as Integer
For Each Control In Me.Controls
If TypeOf Control Is TextBox Then
if len(Control.Value) = 0 then intContador = intContador + 1
End If
Next

if intContador > 0 then 'Hay campos en blanco
msgbox "Hay campos en blanco"
else
For Each Control In Me.Controls
If TypeOf Control Is TextBox Then
Control.Value = ""
End If
If TypeOf Control Is CheckBox Then
Control.Value = False
End If
If TypeOf Control Is ComboBox Then
Control.Value = ""
End If
Next
End If

Exit_Guardar_Click:
Exit Sub

Err_Guardar_Click:
MsgBox Err.Description
Resume Exit_Guardar_Click

End Sub

***** Espero que te haya sido de ayuda
Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar