Fernando Bueno 18/4/2013, 02:46
Boa noite Bred, tente esse modulo
Public Function CpoExigido(ByVal UmForm As Form) As Boolean
Dim ctl As Control
Dim Num As Integer
On Error GoTo Err_CpoExigido
CpoExigido = False
Num = 0
For Each ctl In UmForm
If ctl.ControlType = acTextBox Or ctl.ControlType = acComboBox Then
If ctl = "" Or IsNull(ctl) Then
Num = 1
Exit For
End If
End If
Next ctl
If Num = 1 Then
MsgBox "O campo " & ctl.Name & " está vazio." & vbCr & _
"Verifique e preencha.", _
vbInformation, "Faltam dados..."
CpoExigido = True
Else
CpoExigido = False
End If
Exit_CpoExigido:
On Error Resume Next
If Not (ctl Is Nothing) Then
Set ctl = Nothing
End If
Exit Function
Err_CpoExigido:
Select Case Err
Case 0
Resume Next
Case Else
MsgBox Err.Description, vbInformation, "Erro: " & CStr(Err.Number)
End Select
End Function
Para chamar a função no evento antes de atualizar do Form.
Private Sub Form_BeforeUpdate(Cancel As Integer)
If CpoExigido(Me) Then Cancel = -1
End Sub
.................................................................................
Um abraço
Fernando BuenoO aumento do conhecimento é como uma esfera dilatando-se no espaço
quanto maior a nossa compreensão,
maior o nosso contacto com o desconhecido