Problème avec une Fonction

Le
Willi2004
Bonjour.
Mille excuses de venir perturber votre journée dominicale.

Dans un contrôle d'état, je fais appel à la fonction suivante qui se trouve
dans un module, et qui fonctione bien tant que le champ "MA" n'est pas vide.
Dans le cas contraire, elle renvoie "Erreur#". Mais pourquoi donc?

Function DécisionFinAnnée ( MA As Double) As String
If IsNull (MA) Then
DécisionFinAnnée = Null
Else
[BLOC D'INSTRUCTIONS]
End If
End Function

Je précise que dans la requête source de mon état, "MA" est un champ calculé
qui renvoie des données de type réel double.

Merci pour vos réponses.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Eric
Le #6186601
Bonjour,

Si le champ MA peut être Null, il ne faut pas typer l'argument de la
fonction ou le typer comme Variant. De plus, la fonction pouvant
retourner Null, elle aussi ne doit pas être typée ou alors comme
variant. L'absence de type est équivalent à Variant. Seul un Variant
peut recevoir Null.

Ca devrait donner:
Function DécisionFinAnnée (MA as Variant) As Variant
If IsNull (MA) Then
DécisionFinAnnée = Null
Else
[BLOC D'INSTRUCTIONS]
End If
End Function


Bonjour.
Mille excuses de venir perturber votre journée dominicale.

Dans un contrôle d'état, je fais appel à la fonction suivante qui se trouve
dans un module, et qui fonctione bien tant que le champ "MA" n'est pas vide.
Dans le cas contraire, elle renvoie "Erreur#". Mais pourquoi donc?

Function DécisionFinAnnée ( MA As Double) As String
If IsNull (MA) Then
DécisionFinAnnée = Null
Else
[BLOC D'INSTRUCTIONS]
End If
End Function

Je précise que dans la requête source de mon état, "MA" est un champ calculé
qui renvoie des données de type réel double.

Merci pour vos réponses.




--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

Willi2004
Le #6186581
Bonjour Eric.
Merci pour les explications. Une fois de plus, tu me tires admirablement
bien d'affaire.
Encore merci Professeur.


"Eric" uERor%
Bonjour,

Si le champ MA peut être Null, il ne faut pas typer l'argument de la
fonction ou le typer comme Variant. De plus, la fonction pouvant retourner
Null, elle aussi ne doit pas être typée ou alors comme variant. L'absence
de type est équivalent à Variant. Seul un Variant peut recevoir Null.

Ca devrait donner:
Function DécisionFinAnnée (MA as Variant) As Variant
If IsNull (MA) Then
DécisionFinAnnée = Null
Else
[BLOC D'INSTRUCTIONS]
End If
End Function


Bonjour.
Mille excuses de venir perturber votre journée dominicale.

Dans un contrôle d'état, je fais appel à la fonction suivante qui se
trouve
dans un module, et qui fonctione bien tant que le champ "MA" n'est pas
vide.
Dans le cas contraire, elle renvoie "Erreur#". Mais pourquoi donc?

Function DécisionFinAnnée ( MA As Double) As String
If IsNull (MA) Then
DécisionFinAnnée = Null
Else
[BLOC D'INSTRUCTIONS]
End If
End Function

Je précise que dans la requête source de mon état, "MA" est un champ
calculé
qui renvoie des données de type réel double.

Merci pour vos réponses.




--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr



Publicité
Poster une réponse
Anonyme