Renvoie #Erreur qd cellule vide - Access

Fermé
Martino_ICI Messages postés 18 Date d'inscription jeudi 28 février 2008 Statut Membre Dernière intervention 10 décembre 2008 - 4 déc. 2008 à 11:55
Martino_ICI Messages postés 18 Date d'inscription jeudi 28 février 2008 Statut Membre Dernière intervention 10 décembre 2008 - 4 déc. 2008 à 17:44
Bonjour,

Voilà mon code dans l'objet module d'Access (version2000).

Function date_MAJcasto(date_cde As Date, enseigne As String) As String    
If enseigne = "CASTORAMA" Then
date_MAJcasto = date_cde - 1
Else
date_MAJcasto = date_cde
End If
End Function


Celui-ci fonctionne sauf quand date_cde est vide. Il me renvoie alors "#Erreur"
Comment faire pour qu'il n'applique la fonction que lorsque date_cde n'est pas vide.

Par avance merci
A voir également:

11 réponses

Zasami Messages postés 41 Date d'inscription mercredi 3 décembre 2008 Statut Membre Dernière intervention 8 décembre 2008 8
4 déc. 2008 à 12:04
il faut just tester si la date est vide ou pas autrement dit Null ou non

Function date_MAJcasto(date_cde As Date, enseigne As String) As String

if ( date_cde <>null) then 'Test si la date est vide si oui on fait rien si ne pas vide on exécute l'instruction suivante
If enseigne = "CASTORAMA" Then
date_MAJcasto = date_cde - 1
Else
date_MAJcasto = date_cde
End If
End if
End Function
0
Martino_ICI Messages postés 18 Date d'inscription jeudi 28 février 2008 Statut Membre Dernière intervention 10 décembre 2008
4 déc. 2008 à 12:59
Merci pour ta réponse.

Seulement quand je teste, il fait l'inverse de ce que je demande. C'est-à-dire qu'il me met #Erreur lorsque la cellule est vide et rien lorsque j'ai une date.
0
Zasami Messages postés 41 Date d'inscription mercredi 3 décembre 2008 Statut Membre Dernière intervention 8 décembre 2008 8
4 déc. 2008 à 13:04
inverse seulement la condition de If au lieu de <> mets un =
0
Martino_ICI Messages postés 18 Date d'inscription jeudi 28 février 2008 Statut Membre Dernière intervention 10 décembre 2008
4 déc. 2008 à 13:21
Et oui, c'est bien ce que je me suis dit. Mais bizarrement, il me renvoie exactement le même résultat.
As-tu une autre solution à me proposer??

Par avance merci
0

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

Posez votre question
Zasami Messages postés 41 Date d'inscription mercredi 3 décembre 2008 Statut Membre Dernière intervention 8 décembre 2008 8
4 déc. 2008 à 13:37
c étrange , peux tu m'expliquer exactement, tu veux faire quoi? peut-être le problème ne vient pas de ce bout de code: peu tu metre le message d'erreur qui s'affiche..... meme si je comprend pas pour quoi je vai donner une autre solution
Function date_MAJcasto(date_cde As Date, enseigne As String) As String
if ( date_cde =null) then

msgbox ("la date incorrecte : entre une date valide svp")
exit sub ' quitter la fonction sans rien faire
else
If enseigne = "CASTORAMA" Then
date_MAJcasto = date_cde - 1
Else
date_MAJcasto = date_cde
End If
End if
End Function
0
Martino_ICI Messages postés 18 Date d'inscription jeudi 28 février 2008 Statut Membre Dernière intervention 10 décembre 2008
4 déc. 2008 à 13:52
Je vais essayer d'être clair.

J'ai une table dans laquelle j'ai un champ enseigne, un autre ville et en face, un champ date.
Je veux que lorsqu'il trouve dans le champ enseigne "CASTORAMA", il retire un jour à la date qui correspond.
J'ai donc fait une requête ou je prends tout mes champs et dans un champ supplémentaire, j'intègre ma fonction.
Et dans l'absolue, ça marche. Sauf que lorsque je n'ai pas d'enseigne de renseigné et/ou pas de date, il remonte le résultat #Erreur.

En fait, j'ai l'impression qu'il n'accepte pas les cellules vides.
0
Zasami Messages postés 41 Date d'inscription mercredi 3 décembre 2008 Statut Membre Dernière intervention 8 décembre 2008 8
4 déc. 2008 à 13:56
je comprend pas trop bien , envoi ma ta base par email et je vais voir
0
Martino_ICI Messages postés 18 Date d'inscription jeudi 28 février 2008 Statut Membre Dernière intervention 10 décembre 2008
4 déc. 2008 à 14:18
je te remercie.

La question suivante est bête mais tu peux me communiquer ton adresse mail ou me dire comment te l'envoyer??

par avance merci
0
Zasami Messages postés 41 Date d'inscription mercredi 3 décembre 2008 Statut Membre Dernière intervention 8 décembre 2008 8
4 déc. 2008 à 14:23
envoi en pièce joint sur nakkar2005@yahoo.fr
0
Martino_ICI Messages postés 18 Date d'inscription jeudi 28 février 2008 Statut Membre Dernière intervention 10 décembre 2008
4 déc. 2008 à 14:26
C'est parti.
Je te remercie.
0
Martino_ICI Messages postés 18 Date d'inscription jeudi 28 février 2008 Statut Membre Dernière intervention 10 décembre 2008
4 déc. 2008 à 17:44
Est-ce que tu as pu regarder??
0