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 :

Aide sur l'info bulle des fonctions personalisées


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti
    Homme Profil pro
    Utilisateur privé
    Inscrit en
    Août 2017
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Utilisateur privé

    Informations forums :
    Inscription : Août 2017
    Messages : 14
    Par défaut Aide sur l'info bulle des fonctions personalisées
    Bonjour,

    J'ai créé des fonctions personnalisées et je souhaiterais qu’en insérant la fonction dans la feuille de calcul une info-bulle avec les arguments soit affichée comme pour les fonctions standards d'Excel.

    Nom : Capture.JPG
Affichages : 3037
Taille : 24,0 Ko

    Merci

  2. #2
    Membre éprouvé
    Homme Profil pro
    Comptable
    Inscrit en
    Novembre 2018
    Messages
    100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Comptable

    Informations forums :
    Inscription : Novembre 2018
    Messages : 100
    Par défaut
    Salut,

    Pour ajouter des descriptifs à une fonction personnalisée, il faut utiliser la méthode MacroOptions de l'objet Application.

    Un petit lien et un exemple d'utilisation.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    Public Sub AjouterDescription()
     
        With Application
     
            Dim ArgumentDescription() As String
            ArgumentDescription(0) = "Argument 1"
            ArgumentDescription(1) = "Argument 2"
            '...
     
            'Pour avoir l'ensemble des éléments Utiliser l'aide et chercher MarcoOptions
            .MacroOptions "NomFonction", "Description", , , , , , , , , ArgumentDescriptions
     
        End With
     
    End Sub
    A+

  3. #3
    Membre averti
    Homme Profil pro
    Utilisateur privé
    Inscrit en
    Août 2017
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Utilisateur privé

    Informations forums :
    Inscription : Août 2017
    Messages : 14
    Par défaut
    Bonjour John,

    Merci pour cette information.
    L'exemple donné ne fonctionne pas car il y a trop d'arguments (11) alors que ma version n'en accepte que 10 (le dernier est le nom du fichier d'aide) comme indiqué sur la capture d'écran:

    Nom : Capture.JPG
Affichages : 1454
Taille : 116,3 Ko

    Je précise la version utilisée d'Excel 2007 (12.0.6780.5000) SP3 MSO (12.0.6777.5000).
    Nom : Capture version excel.JPG
Affichages : 1417
Taille : 37,2 Ko

    Avez-vous une autre piste?

    Merci et bonnes fêtes de fin d'année.

  4. #4
    Membre éprouvé
    Homme Profil pro
    Comptable
    Inscrit en
    Novembre 2018
    Messages
    100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Comptable

    Informations forums :
    Inscription : Novembre 2018
    Messages : 100
    Par défaut
    Salut,

    C'est la seule solution (que je connaisse) pour reproduire les fonctionnalités natives des formules d'Excel. Et à mon humble avis, si cette fonction doit être utilisé par des personnes autres que toi, il te reste deux solutions :
    - Soit prévoir un manuel externe à la fonction pour l'utilisateur. Ce qui risque d'être perturbant pour des utilisateurs peu à l'aise avec l'outil.
    - Soit tu postes ton code et on voit si l'on ne peut pas réduire le nombre d'arguments (à 10 maximum) pour obtenir le même résultat.

    A+

  5. #5
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 84
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Par défaut
    Bonjour
    Il est pour moi assez clair qu'une fonction personnalisée utilisant un nombre important d'arguments et/ou paramètres (et forçant donc l'utilisateur final à définir chacun de ces éléments) est tout sauf conviviale et révèle une conception mal pensée.
    Si par contre les éléments en cause doivent être spécifiés par le développeur, la "musique" est autre, mais la "philosophie" est de même nature. Une fonction personnalisée doit avoir pour vocation celle d'être utilisable dans plusieurs contextes et je vois assez mal quels contextes seraient à la fois communs et nécessitant l'utilisation de tant d'éléments qui seraient distincts d'un contexte à l'autre. Et si le développeur est celui devant utiliser cette fonction personnalisée, il est par ailleurs le dernier à avoir besoin d'aide en ce qui concerne son utilisation (puisqu'il est le créateur de la fonction).
    Il est, dans un cas comme dans l'autre, assez vraisemblable que la conception est à repenser.

  6. #6
    Membre averti
    Homme Profil pro
    Utilisateur privé
    Inscrit en
    Août 2017
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Utilisateur privé

    Informations forums :
    Inscription : Août 2017
    Messages : 14
    Par défaut
    Bonjour,

    Ce n'est pas ma fonction personnalisée qui a trop d'arguments mais la méthode MacroOptions de l'objet Application dans l'exemple fournit par John où "ArgumentDescriptions" est le 11ème alors que ma version d'Excel n'accepte que 10 arguments pour cette méthode.

    Bonnes fêtes à tous.

    Jean-Luc

  7. #7
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 84
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Par défaut
    J'ai d'énormes difficultés à deviner ce que tu veux dire.
    Je ne vois rien dans le lien en cause qui corresponde à ce que tu écris.

    EDIT : ne confondrais-tu par hasard pas "arguments" et "rubriques de classement" des fonctions ?

  8. #8
    Membre Expert
    Homme Profil pro
    PAO
    Inscrit en
    Octobre 2014
    Messages
    2 576
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : PAO
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Octobre 2014
    Messages : 2 576
    Par défaut
    Bonjour jlg91 ( Jacques),

    Comme tu peux le voir dans un post plus haut, l’aide précise que tous les arguments sont facultatifs,
    Il te suffit donc d’utiliser seulement ceux dont tu as besoin … et bien sûr dans l’ordre.
    Chaque arguments (a moins d’être nommés) sont mis dans l’ordre séparés par une virgule ; les arguments que l’on ne veut pas ne sont pas spécifiés entre les 2 virgules à leur emplacement d’odre respectif …
    Cordialement
    Ryu

    La connaissance s’acquiert par l’expérience, tout le reste n’est que de l’information. – Albert Einstein

    Pensez à la Balise [ CODE][/CODE ] - à utiliser via le bouton # => Exemple

    Une fois votre problème solutionné pensez à mettre :resolu: en n'oubliant pas d'indiquer qu'elle est la solution finale choisie ;)

  9. #9
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 84
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Par défaut
    Bonjour Ryu

    Ce n'est pas ma fonction personnalisée qui a trop d'arguments
    Je ne vois toujours pas de quoi il veut parler.

  10. #10
    Rédacteur/Modérateur


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 125
    Billets dans le blog
    131
    Par défaut
    Salut Jacques,

    C'est MacroOptions qui n'a pas chez lui le même nombre d'arguments que ceux proposés par John Mc Evee (Voir la réponse de Ryu qui est claire à ce sujet)
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  11. #11
    Rédacteur/Modérateur


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 125
    Billets dans le blog
    131
    Par défaut
    Salut.

    A ma connaissance, Application.MacroOptions n'ajoute pas l'infobulle lors de la saisie de la fonction. Ca ne sert "que" dans l'assistant Fonctions (et pour le descriptif, dans la fenêtre de recherche des fonctions).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Public Function MonTest(FirstName As String, LastName As String)
     
    End Function
     
    Sub AddDescriptions()
      Application.MacroOptions macro:="MonTest", Description:="Je fais un test", _
        argumentdescriptions:=VBA.Array("prénom du contact", "nom du contact")
    End Sub
    Nom : 20181228_01.png
Affichages : 1421
Taille : 18,0 Ko
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  12. #12
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 84
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Par défaut
    Bonjour Pierre

    Citation Envoyé par Pierre Fauconnier Voir le message
    Salut Jacques,

    C'est MacroOptions qui n'a pas chez lui le même nombre d'arguments que ceux proposés par John Mc Evee (Voir la réponse de Ryu qui est claire à ce sujet)
    Vu (merci). Il semble en effet que l'argument argumentdescriptions (un array de descriptions) n'existe que depuis la version 2010 (j'en suis encore à 2007, comme dans le lien/silkyRoad donné plus haut).

  13. #13
    Rédacteur/Modérateur


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 125
    Billets dans le blog
    131
    Par défaut
    Merci Jacques pour la précision

    Ca veut donc dire qu'en 2007, il n'est pas possible par ce biais de décrire les arguments de la fonction, qui doivent donc être nommés de façon à ce qu'on en comprenne le sens.
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  14. #14
    Membre averti
    Homme Profil pro
    Utilisateur privé
    Inscrit en
    Août 2017
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Utilisateur privé

    Informations forums :
    Inscription : Août 2017
    Messages : 14
    Par défaut
    Bonjour

    Merci à Pierre d’avoir compris ma demande.
    Je pensais que mon message du 26 décembre était clair avec ses copie d’écran.

    J’attedrai Donc que mon entreprise passe à Excel 2010 ou + pour inclure cette fonctionnalité.

    Bonne année à tous
    Jean-Luc

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

Discussions similaires

  1. info-bulle des controles sur controle onglet
    Par lhssen dans le forum IHM
    Réponses: 1
    Dernier message: 18/01/2018, 19h39
  2. [JavaScript]Délais sur une info bulle
    Par YAMKI dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 05/02/2007, 15h13
  3. Réponses: 1
    Dernier message: 22/03/2006, 09h57
  4. probleme sur une info bulle avec onMouseOver
    Par pouss dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 08/02/2006, 09h40

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