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 :

Appel de fonction


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé Avatar de FidoDido®
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2005
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2005
    Messages : 101
    Par défaut Appel de fonction
    Salut, désolé si la question peut vous paraitre stupide, mais je débute.

    Je veux créer une fonction que je peux appeler directement dans une cellule avec un appel du style "=maFonction(A2)"

    Je créé donc cette fonction dans ma Feuil1 par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Public Function maFonction(ByVal x As Double) As Double
        maFonction = x * x * 3.1415
    End Function
    et je fais appel dans la cellule B2 : "=maFonction(A2)" mais la réponse est la suivante : "#NOM?". Je ne comprends pas pkoi, pourriez vous m'expliquer ce que je fais de pas correct ?

    Merci

  2. #2
    Membre émérite
    Avatar de fred65200
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    901
    Détails du profil
    Informations personnelles :
    Âge : 58
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 901
    Par défaut
    bonjour,

    ta fonction est correcte. Reste à savoir où tu l'a écrite.
    Si c'est dans un module de feuille alors du aura #NOM.
    Place la dans un module de code et tout devrait rentrer dans l'ordre.

    Si tu veux qu'elle soit disponible dans tous tes classeurs, enregistre ton classeur en macro complémentaire .xla

    Cordialement

  3. #3
    Expert confirmé

    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
    Par défaut
    bonjour

    en info complémentaire, mais qui n'influe pas sur ton message d'erreur :


    Une fonction placée dans un module standard est de type Public par défaut. Il n'est donc pas nécessaire de faire précéder l'instruction Function par le mot clé Public.


    si tes fonctions servent exclusivement dans la feuille de calcul, tu n'as pas besoin de spécifier ByVal car une formule ne peut pas agir sur les données appelantes.


    Ce qui donne:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Function maFonction(x As Double) As Double
        maFonction = x * x * 3.1415
    End Function

    bonne journée
    michel

  4. #4
    Membre confirmé Avatar de FidoDido®
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2005
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2005
    Messages : 101
    Par défaut
    Je ne comprends pas, j'ai mis exactement le même code dans un module de code, et je n'arrive toujours pas à appeler ma fonction.

  5. #5
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Tu dois valider la cellule ou la feuille pour que la fonction soit prise en compte -> F9

  6. #6
    Membre émérite
    Avatar de fred65200
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    901
    Détails du profil
    Informations personnelles :
    Âge : 58
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 901
    Par défaut
    bonjour

    dans un module de code de ton classeur actif?

    Clic sur le bouton Somme / autres fonctions

    Choisie la catégorie Personnalisée dans la liste de choix.

    Vois tu ta fonction?

    cordialement

Discussions similaires

  1. Appeler une fonction avec "action" ds un
    Par drinkmilk dans le forum ASP
    Réponses: 4
    Dernier message: 20/04/2004, 14h54
  2. Réponses: 4
    Dernier message: 19/04/2004, 13h41
  3. [JSP] Appeler une fonction
    Par Patrick95 dans le forum Servlets/JSP
    Réponses: 10
    Dernier message: 23/12/2003, 13h44
  4. Appel à des fonctions incluses dans des DLL
    Par Greybird dans le forum Langage
    Réponses: 3
    Dernier message: 26/05/2003, 13h33
  5. Appeler une fonction avec/sans parenthèses
    Par haypo dans le forum Algorithmes et structures de données
    Réponses: 8
    Dernier message: 29/12/2002, 18h48

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