erreur d exécution 94
Le
MULLER

bonjour,
Dans une requête je demande d'entrer le numéro de dossier via le clavier.
Si l'opérateur tape un numéro invalide ( c a d que la requête ne trouve
aucun enregistrement ) j' ai le message d'erreur suivant:
Visual Basic
erreur d'exécution '94'
utilisation incorrecte de Null.
Comment récupérer cette erreur autrement que par le message de microsoft ?
merci
Dans une requête je demande d'entrer le numéro de dossier via le clavier.
Si l'opérateur tape un numéro invalide ( c a d que la requête ne trouve
aucun enregistrement ) j' ai le message d'erreur suivant:
Visual Basic
erreur d'exécution '94'
utilisation incorrecte de Null.
Comment récupérer cette erreur autrement que par le message de microsoft ?
merci
Cette erreur a lieu dans la routine Form_Open() dans laquelle je dois
récupérer une variable.
Peut-être qu'en donnant ici le contenu (même partiel) de la routine, ça
permettrait d'imaginer des éléments de réponse...
db
Public DOSSIERNUMERO As Long
Private Sub Form_Open(Cancel As Integer)
'-------------------------------------
' garder ce numero en mémoire
'DOSSIERNUMERO = Me.NUMERO_DE_DOSSIER.Value
End Sub
comme la requête n a rien trouvé 'Me.NUMERO_DE_DOSSIER.Value' est Null
If IsNull(NUMERO_DE_DOSSIER) Then
MsgBox "Attention, numéro de dossier non saisi"
DoCmd.Close acForm, Me.Name
Else
DOSSIERNUMERO = NUMERO_DE_DOSSIER
End IF
Je verrais bien faire la saisie du numéro de dossier dans un autre
formulaire.
Sur la zone de saisie, mettre une procédure événementielle sur
changement, où on rendra le bouton accessible si le numéro n'est pas
nul, et on le refera disparaître (ou on le désactivera) si le numér o
vient à être à nouveau nul. Bien sûr, il convient de se demander si
c'est le texte saisi, qui doit être non nul ou différent de chaîne vide,
ou sa conversion numérique qui doit être différente de zéro.
Et le bouton ouvrira le formulaire d'exploitation du dossier, avec en
OpenArgs le numéro de dossier.
Alors un texte non nul et différent de chaîne vide, ça donne :
Nz(strNumDossier, "") <> ""
Ce qui ne dispense pas, bien sûr, de placer une procédure de gestion
d'erreur sur chaque Sub et chaque Function.
Voir dans l'aide "On Error Goto".
Bon, eh ben comme ça ... ça fait un accusé de réception :)