Fonction au format date (VBA)

Résolu
Frappe Misere Messages postés 2702 Statut Membre -  
Frappe Misere Messages postés 2702 Statut Membre -
Bonjour,
une fonction au format date : function pouet(date1, date2) as date
peut elle renvoyer une valeur nulle ?
merci

--
Knowledge is power.
Configuration: Windows XP
Internet Explorer 6.0

6 réponses

  1. Ivan-hoe Messages postés 433 Date d'inscription   Statut Membre Dernière intervention   310
     
    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.
    0
  2. Frappe Misere Messages postés 2702 Statut Membre 568
     
    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.
    0
    1. Ivan-hoe Messages postés 433 Date d'inscription   Statut Membre Dernière intervention   310
       
      et si tu déclares ta fonction en Variant au lieu de Date ?
      0
  3. Ivan-hoe Messages postés 433 Date d'inscription   Statut Membre Dernière intervention   310
     
    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é.
    0
  4. Frappe Misere Messages postés 2702 Statut Membre 568
     
    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 ?
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Ivan-hoe Messages postés 433 Date d'inscription   Statut Membre Dernière intervention   310
     
    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
    0
  7. Frappe Misere Messages postés 2702 Statut Membre 568
     
    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.
    0