Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Problème avec une Fonction

2 réponses
Avatar
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.

2 réponses

Avatar
Eric
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

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


"Eric" a écrit dans le message de news:
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