Compléments pour Microsoft Access

http://access.fr.free.fr/

Données non saisies (Formulaire)

Description 

Cette fonction permet de retourner une chaîne contenant le nom des contrôles de type :

  • zone de texte,
  • zone de liste,
  • zone de liste modifiable.

qui n'ont pas été renseignés dans un formulaire.

 
Synthaxe 

expression = DataNull ()

 
Exemple 

Pour utiliser cette fonction, il suffit de mettre ce code sur l'évènement "Sur libération" :

Private Sub Form_UnLoad (Cancel As Integer)

Dim strMsg As String

strMsg = DataNull
If strMsg <> "" Then
        Cancel = True
        MsgBox strMsg, vbCritical
End If

End Sub

Ce code aura pour effet d'annuler la fermeture du formulaire et d'informer avec un message, des zones qui n'ont pas été saisies.

 
Code de la fonction 


Public Function DataNull() As String

    Dim frm As Form
    Dim ctl As Control
    Dim strMsg As String

    Set frm = Screen.ActiveForm

    For Each ctl In frm.Controls
        If ctl.ControlType = acTextBox _
        Or ctl.ControlType = acListBox _
        Or ctl.ControlType = acComboBox Then
            If IsNull(ctl.Value) Or ctl.Value = "" Then _
                strMsg = strMsg & vbCrLf & vbTab & "- " & ctl.Name
        End If
    Next

    If strMsg <> "" Then DataNull = "Vous devez saisir : " & vbCrLf & strMsg

End Function