Fonction au format date (VBA) [Résolu/Fermé]

Signaler
Messages postés
2677
Date d'inscription
vendredi 22 février 2008
Statut
Membre
Dernière intervention
10 août 2011
-
Messages postés
2677
Date d'inscription
vendredi 22 février 2008
Statut
Membre
Dernière intervention
10 août 2011
-
Bonjour,
une fonction au format date : function pouet(date1, date2) as date
peut elle renvoyer une valeur nulle ?
merci

6 réponses

Messages postés
433
Date d'inscription
dimanche 17 février 2008
Statut
Membre
Dernière intervention
17 octobre 2008
301
Bonjour FM,
normalement, oui, une date (même renvoyée par une fonction) peut être nulle.
Le mieux est de faire un test, non ?
I.
Messages postés
2677
Date d'inscription
vendredi 22 février 2008
Statut
Membre
Dernière intervention
10 août 2011
551
bah justement, ça a fonctionné, il y a quelques temps et il me semble que grace aux mises à jour du merveilleux service informatique, ça ne fonctionne plus.
le probleme est que je ne peux pas avoir le detail des maj et le peu d'interlocuteurs que j ai ne savent rien :)
je penche pour une maj du moteur jet, mais dans le doute...
je reste bien embeté avec ma fonction qui me renvoit 0 là ou je veux null.
Messages postés
433
Date d'inscription
dimanche 17 février 2008
Statut
Membre
Dernière intervention
17 octobre 2008
301
et si tu déclares ta fonction en Variant au lieu de Date ?
Messages postés
433
Date d'inscription
dimanche 17 février 2008
Statut
Membre
Dernière intervention
17 octobre 2008
301
FM, j'avais mal interprété ta question : par valeur nulle, je compenais =0. Une fonction date qui renvoie Null ? ça ne me dit rien ; je me rallie à tes pauvres interlocuteurs qui ne savent rien. Désolé.
Messages postés
2677
Date d'inscription
vendredi 22 février 2008
Statut
Membre
Dernière intervention
10 août 2011
551
j'y ai pensé mais le souci c'est que apres je ne peux plus efectuer de tri sur mes dates puisqu il les traite comme du texte.
je pourrais reformuler ma question :
comment avoir une fonction me renvoyant une donnée au format date ou une valeur nulle ?
Messages postés
433
Date d'inscription
dimanche 17 février 2008
Statut
Membre
Dernière intervention
17 octobre 2008
301
Salut !
as-tu trouvé une solution, depuis le temps ? sinon, essaie donc la bidouille suvante, en déclarant ta fonction en Variant et en renvoyant le résultat non nul sous forme de date (avec CDate)

Function Pouet(date1,date2) As Variant
Pouet = date1 + date2
If Pouet = 0 Then
Pouet = Empty
Else
Pouet = CDate(DDA)
End If
End Function
Messages postés
2677
Date d'inscription
vendredi 22 février 2008
Statut
Membre
Dernière intervention
10 août 2011
551
j'y ai pensé mais la foncion pouet reste de type variant, donc ta date est repassée au format variant.
pour résoudre ce probleme, j'ai fait 2 fonctions, une premiere de type variant, appelée par la 2e de format date qui ne fait que changer le type.