IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

récupérer le nombre d'arguments d'une fonction


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Inscrit en
    Mai 2004
    Messages
    76
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 76
    Points : 49
    Points
    49
    Par défaut récupérer le nombre d'arguments d'une fonction
    Bonjour,
    Certains arguments d'une fonction pouvant être optionnels (optional), comment peut-on récupérer le nombre d'arguments en entrée de la fonction?

    merci beaucoup.

  2. #2
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Points : 5 535
    Points
    5 535
    Par défaut
    Bonjour,

    en recensant les présents (ou les absents) au tout début de ta fonction ....

    Fais un tour dans ton aide en ligne pour voir à quoi peut servir la fonction Ismissing ...

  3. #3
    Membre du Club
    Inscrit en
    Mai 2004
    Messages
    76
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 76
    Points : 49
    Points
    49
    Par défaut
    Merci pour ta réponse. j'ai regardé la fonction ismissing, elle ne concerne que les paramètres de type variant.
    (ce qui ne me gêne pas dans mon cas).
    donc c'est résolu.


    Merci

    simple curiosité: comment aurait-on fait si les arguments devaient être des double?

  4. #4
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Points : 5 535
    Points
    5 535
    Par défaut
    Un paramètre optionnel (optional) ne pouvant pas être d'un autre type que Variant, la question ne se pose donc pas ...

  5. #5
    Expert éminent
    Avatar de cafeine
    Inscrit en
    Juin 2002
    Messages
    3 904
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 3 904
    Points : 6 781
    Points
    6 781
    Par défaut
    non
    un argument optional peut être de n'importe quel type, je pense que tu confonds avec Paramarray

    Citation Envoyé par ucfoutu Voir le message
    Un paramètre optionnel (optional) ne pouvant pas être d'un autre type que Variant, la question ne se pose donc pas ...
    Ne mettez pas "Problème" dans vos titres, par définition derrière toute question se cache un problème
    12 tutoriels Access



  6. #6
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Points : 5 535
    Points
    5 535
    Par défaut
    Tu as en effet raison, Cafeine

    Il va donc lui falloir tester sur la valeur par défaut correspondant au type du paramètre.

    Pas de difficultés avec un type String ( test si = ""), par exemple,

    mais avec un type numérique, impossible de distinguer si le paramètre est absent ou égal à 0 (envoyé = 0 ou pas envoyé du tout ) ...

  7. #7
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Août 2005
    Messages
    3 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2005
    Messages : 3 317
    Points : 20 144
    Points
    20 144
    Par défaut
    bonjour

    mais avec un type numérique, impossible de distinguer si le paramètre est absent ou égal à 0 (envoyé = 0 ou pas envoyé du tout ) ...
    d'ou l'interet de déclarer les arguments optionnels en Variant et d'utiliser la fonction IsMissing comme indiqué dans un de tes précédents messages... ;o)


    bon après midi
    michel

  8. #8
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Points : 5 535
    Points
    5 535
    Par défaut
    Bonjour Michel,

    CQFD (hélàs ...)

  9. #9
    Membre du Club
    Inscrit en
    Mai 2004
    Messages
    76
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 76
    Points : 49
    Points
    49
    Par défaut
    Merci à vous pour ces précisions.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 21
    Dernier message: 14/11/2014, 16h11
  2. nombre d'arguments d'une fonction (nargin)
    Par kaleme dans le forum R
    Réponses: 2
    Dernier message: 18/02/2014, 13h49
  3. Réponses: 4
    Dernier message: 04/03/2013, 11h16
  4. Déterminer le nombre d'arguments d'une fonction variadic
    Par gege2061 dans le forum Télécharger
    Réponses: 0
    Dernier message: 30/11/2010, 17h39
  5. [RegEx] Récupérer les arguments d'une fonction
    Par brunoperel dans le forum Langage
    Réponses: 2
    Dernier message: 29/07/2008, 19h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo