Erreur d'exécution'94':

mohalesage Messages postés 162 Statut Membre -  
mohalesage Messages postés 162 Statut Membre -
Bonjour les amis

mon problème : est quant je sélectionne un matricule sur la combox, le VB6 me renvoie le message :

Erreur d'exécution'94'
Utilisation non autorisé de NULL

ce message apparait quant la BD d'un objet est vide.
je ne sais pas comment contourner ce problème


If KeyAscii = 13 Then
If RS.EOF And RS.BOF Then
MsgBox "Ce Matricule n'existe pas", vbCritical + vbMsgBoxRight, "Erreur"
Exit Sub
cmbMatricule.SetFocus

Else


RS.MoveFirst
      

      
      
      
TCin = RS![CIN]
TNom = RS![NOM]
TPrenom = RS![PRENOM]
lblCumulHn = RS![CUMULHN]
lblCumulHSup = RS![CUMULHSUP]
lblCumulHAlatache = RS![CUMULHALATACHE]

End If

RS.Close
End If
cmbHEntM.SetFocus
End If



l'application se bloque au niveau de :

lblCumulHn = RS![CUMULHN]
lblCumulHSup = RS![CUMULHSUP]
lblCumulHAlatache = RS![CUMULHALATACHE]



quant les RS sont vides

Merci pour votre aide
A voir également:

6 réponses

logisticien
 
Tu peux commenter ton code à la fin, car j'ai pas très bien saisi le concept de tes déclarations de variables sur les trois dernières lignes =)
0
f894009 Messages postés 17414 Date d'inscription   Statut Membre Dernière intervention   1 715
 
Bonjour,

Si les trois derniers objets sont des Labels, il faut ecrire:

lblCumulHn.Caption = RS![CUMULHN]
lblCumulHSup.Caption = RS![CUMULHSUP]
lblCumulHAlatache.Caption = RS![CUMULHALATACHE]

Bonne suite
0
mohalesage Messages postés 162 Statut Membre 1
 
Bonjour l'ami,

même en écrivant :

lblCumulHn.Caption = RS![CUMULHN] 
lblCumulHSup.Caption = RS![CUMULHSUP] 
lblCumulHAlatache.Caption = RS![CUMULHALATACHE] 



le problème persiste

le même message est affiché.( Notez bien que je travail dans un environnement de VB6 avec un base de données localisée en MS access 2003, avec une liaison ADO )

je n'arrive pas à faire afficher les label des cumuls avec la valeur 00:00:00 ( heure) pour un nouveau matricule.

Merci pour votre aide
0
f894009 Messages postés 17414 Date d'inscription   Statut Membre Dernière intervention   1 715
 
Bonjour,

votre erreur est: Utilisation non autorisé de NULL. Vos champs ont une valeur NULL ou ils ont une valeur

pour eviter erreur a chaques tests (je vous montre pour le 1er):
If Not IsNull(RS![CUMULHN]) Then 
    lblCumulHn.Caption = RS![CUMULHN] 
Else 
    lblCumulHn.Caption 
End If
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
mohalesage Messages postés 162 Statut Membre 1
 
Bonjour l'ami,
A priori, les champs concernés par cette erreur n'ont aucune valeur
Votre suggestion je l'essairai une fois rentré chez moi.
Merci pour votre disponiblité.

A plus
0
mohalesage Messages postés 162 Statut Membre 1
 
Bonjour l'ami,

De prime, votre suggestion a réussi, et pour vous mettre dans le décor, je vous présente le code que j'ai écris, avec un peu de réajustement.




Dim XCumul1HAlatache As Date
Dim y
Dim Ok As Date
Ok = #12:00:00 AM#

If Not IsNull(RS![CUMULHALATACHE]) Then
XCumul1HAlatache = RS![CUMULHALATACHE]
Else
XCumul1HAlatache = Ok
End If

y = XCumul1HAlatache + CDate(lblAlatache)
lblCumulHAlatache.Caption = y




Merci du fond du coeur pour votre disponibilité.

A plus
0