OVH Cloud OVH Cloud

Aide fonction

17 réponses
Avatar
Leo
Bonsoir,

Je souhaite mettre l'aide directement dans une fonction, lorsque celle ci
est selectionnée. Pour l'aide générale, j'ai trouvé :

Application.MacroOptions Macro:="bidule", Description:="commentaire général
", ShortcutKey:=""

Pas de soucis le commentaire apparait , mais par contre, lorsque l'on
selectionne les arguments, je souhaite
également mettre l'aide associée et directement dans la macro ?

Comment faire ?

--


Amicalement,
Leo
---------------------------------------------
Pour les riders, BMX, VTT. Un seul site :
Little Big Trail : http://perso.wanadoo.fr/lbt/
---------------------------------------------

10 réponses

1 2
Avatar
Pierre Fauconnier
Bonsoir

Ci- dessous, un exemple permet de documenter une fonction et ses arguments.
Cette documentation est installée dans le USER32.DLL. L'exemple reprend une
fonction ( uniquement sa ligne de déclaration ), puis la procédure
d'enregistrement ( Enregistrement ) ainsi que la procédure qui lance
Enregistrement pour la fonction voulue, citée en exemple.

**********
Function NumeroMod97(Numero As String, FormatSortie As String)
...
...
End Function

Sub Enregistrement(NomFonction As String, NombreArgs As Integer, _
Args As String, TypeMacro As Integer, Categorie As String, Description As
String, _
DescArgs As String, FLib As String)
Dim Chaine As String
Chaine = Chaine & """USER32"""
Chaine = Chaine & ",""" & FLib & """"
Chaine = Chaine & ",""" & String(NombreArgs, "P") & """"
Chaine = Chaine & ",""" & NomFonction & """"
Chaine = Chaine & ",""" & Args & """"
Chaine = Chaine & "," & TypeMacro
Chaine = Chaine & ",""" & Categorie & """,,,"
Chaine = Chaine & """" & Description & """"
Chaine = Chaine & "," & DescArgs

Application.ExecuteExcel4Macro "REGISTER(" & Chaine & ")"
End Sub

Sub Enregsitrerfonction()
Enregistrement "NumeroMod97", 3, "Numero,FormatSortie", 1, _
"Mes fonctions", "Calcule une chaine VCS", _
"""Numéro de dix chiffres"",""Format de restitution, par défaut le format
VCS (000/0000/00000). """, "CharPrevA"
End Sub

**********
Pour "désenregistrer" la fonction, il convient d'utiliser
**********
Sub Desenregistrer(MaMacro)
With Application
.ExecuteExcel4Macro "UNREGISTER(" & MaMacro & ")"
.ExecuteExcel4Macro "REGISTER(""USER32"",""CharPrevA"",""P"",""" &
MaMacro & """,,0)"
.ExecuteExcel4Macro "UNREGISTER(" & MaMacro & ")"
End With
End Sub
**********


Il faut faire attention aux signes "" qui doivent être dédoublés pour tous
les paramètres String, puisque REGISTER demande une variable string en
argument, comprenant elle-même des arguments de type string


--
Cela convient-il?
----
Pierre Fauconnier
"Si j'étais Dieu, je démissionnerais pour que les gens arrêtent de se battre
en mon nom." (Le Chat...)
(remplacer NOSPAM par pfi.be pour me répondre. Merci)


---
Leo wrote:
Bonsoir,

Je souhaite mettre l'aide directement dans une fonction, lorsque
celle ci est selectionnée. Pour l'aide générale, j'ai trouvé :

Application.MacroOptions Macro:="bidule", Description:="commentaire
général ", ShortcutKey:=""

Pas de soucis le commentaire apparait , mais par contre, lorsque l'on
selectionne les arguments, je souhaite
également mettre l'aide associée et directement dans la macro ?

Comment faire ?


Avatar
Pierre Fauconnier
Bonsoir

J'oublie de préciser que le nombre d'arguments passés à la fonction doit
être supérieur de 1 au nombre d'arguments de la fonction ( Dans l'exemple
ci-avant, la fonction requiert deux arguments, il faut donc déclarer 3
arguments ( la fonction + ses deux arguments ).
D'une discussion sur un site anglophone, il ressort que "CharNextA" est
nécessaire, mais je ne vois pas à quoi cela sert. Si quelqu'un a une idée
( Laurent Longre, qui a apparemment inspiré le fil de discussion sur le site
anglophone sur lequel j'ai trouvé la doc... )

Pierre

Pierre Fauconnier wrote:
Bonsoir

Ci- dessous, un exemple permet de documenter une fonction et ses
arguments. Cette documentation est installée dans le USER32.DLL.
L'exemple reprend une fonction ( uniquement sa ligne de déclaration
), puis la procédure d'enregistrement ( Enregistrement ) ainsi que la
procédure qui lance Enregistrement pour la fonction voulue, citée en
exemple.

**********
Function NumeroMod97(Numero As String, FormatSortie As String)
...
...
End Function

Sub Enregistrement(NomFonction As String, NombreArgs As Integer, _
Args As String, TypeMacro As Integer, Categorie As String,
Description As String, _
DescArgs As String, FLib As String)
Dim Chaine As String
Chaine = Chaine & """USER32"""
Chaine = Chaine & ",""" & FLib & """"
Chaine = Chaine & ",""" & String(NombreArgs, "P") & """"
Chaine = Chaine & ",""" & NomFonction & """"
Chaine = Chaine & ",""" & Args & """"
Chaine = Chaine & "," & TypeMacro
Chaine = Chaine & ",""" & Categorie & """,,,"
Chaine = Chaine & """" & Description & """"
Chaine = Chaine & "," & DescArgs

Application.ExecuteExcel4Macro "REGISTER(" & Chaine & ")"
End Sub

Sub Enregsitrerfonction()
Enregistrement "NumeroMod97", 3, "Numero,FormatSortie", 1, _
"Mes fonctions", "Calcule une chaine VCS", _
"""Numéro de dix chiffres"",""Format de restitution, par défaut le
format VCS (000/0000/00000). """, "CharPrevA"
End Sub

**********
Pour "désenregistrer" la fonction, il convient d'utiliser
**********
Sub Desenregistrer(MaMacro)
With Application
.ExecuteExcel4Macro "UNREGISTER(" & MaMacro & ")"
.ExecuteExcel4Macro
"REGISTER(""USER32"",""CharPrevA"",""P"",""" & MaMacro & """,,0)"
.ExecuteExcel4Macro "UNREGISTER(" & MaMacro & ")"
End With
End Sub
**********


Il faut faire attention aux signes "" qui doivent être dédoublés pour
tous les paramètres String, puisque REGISTER demande une variable
string en argument, comprenant elle-même des arguments de type string



---
Leo wrote:
Bonsoir,

Je souhaite mettre l'aide directement dans une fonction, lorsque
celle ci est selectionnée. Pour l'aide générale, j'ai trouvé :

Application.MacroOptions Macro:="bidule", Description:="commentaire
général ", ShortcutKey:=""

Pas de soucis le commentaire apparait , mais par contre, lorsque l'on
selectionne les arguments, je souhaite
également mettre l'aide associée et directement dans la macro ?

Comment faire ?




Avatar
Leo
Bonsoir,
Je suppose que ceci est fait pour mettre de l'aide dans le fichier d'aide.
( je vais y jetter un regard interressé )
Par contre, je me suis mal exprimé.
Je souhaitais en fait, mettre de l'aide ou du moins une description dans la
boite de dialogue qui s'ouvre si l'on sélectionne la cellule contenant la
fonction et que selectionne Fx.
La boite de dialogue affichée, donne une description de la fonction, ainsi
qu'une description des différents paramètres de la fonction, si on les
selectionne. C'est ces éléments que je souhaite renseigner.

Merci ,

Amicalement,
Leo
---------------------------------------------
Pour les riders, BMX, VTT. Un seul site :
Little Big Trail : http://perso.wanadoo.fr/lbt/
---------------------------------------------

"Leo" a écrit dans le message de
news:c1thqi$p8r$

Bonsoir,

Je souhaite mettre l'aide directement dans une fonction, lorsque celle ci
est selectionnée. Pour l'aide générale, j'ai trouvé :

Application.MacroOptions Macro:="bidule", Description:="commentaire
général

", ShortcutKey:=""

Pas de soucis le commentaire apparait , mais par contre, lorsque l'on
selectionne les arguments, je souhaite
également mettre l'aide associée et directement dans la macro ?

Comment faire ?

--


Amicalement,
Leo
---------------------------------------------
Pour les riders, BMX, VTT. Un seul site :
Little Big Trail : http://perso.wanadoo.fr/lbt/
---------------------------------------------




Avatar
Pierre Fauconnier
Salut Léo,

Non, tu t'étais bien exprimé et ma réponse apporte la solution à ton
problème.

Avec l'exemple que j'ai donné ( fonction NumeroMod97...) Tu vois apparaître
les commentaires pour la fonction et ses arguments dans la boîte de dialogue
utilisée par l'assistant fonctions, ou par Ctrl+A après avoir saisi
=NumeroMod97( dans une cellule

Tu dois juste faire attention aux "" encadrant les valeurs string

Pierre

Leo wrote:
Bonsoir,
Je suppose que ceci est fait pour mettre de l'aide dans le fichier
d'aide. ( je vais y jetter un regard interressé )
Par contre, je me suis mal exprimé.
Je souhaitais en fait, mettre de l'aide ou du moins une description
dans la boite de dialogue qui s'ouvre si l'on sélectionne la cellule
contenant la fonction et que selectionne Fx.
La boite de dialogue affichée, donne une description de la fonction,
ainsi qu'une description des différents paramètres de la fonction, si
on les selectionne. C'est ces éléments que je souhaite renseigner.

Merci ,

Amicalement,
Leo
---------------------------------------------
Pour les riders, BMX, VTT. Un seul site :
Little Big Trail : http://perso.wanadoo.fr/lbt/
---------------------------------------------

"Leo" a écrit dans le message de
news:c1thqi$p8r$

Bonsoir,

Je souhaite mettre l'aide directement dans une fonction, lorsque
celle ci est selectionnée. Pour l'aide générale, j'ai trouvé :

Application.MacroOptions Macro:="bidule", Description:="commentaire
général ", ShortcutKey:=""

Pas de soucis le commentaire apparait , mais par contre, lorsque l'on
selectionne les arguments, je souhaite
également mettre l'aide associée et directement dans la macro ?

Comment faire ?

--


Amicalement,
Leo
---------------------------------------------
Pour les riders, BMX, VTT. Un seul site :
Little Big Trail : http://perso.wanadoo.fr/lbt/
---------------------------------------------




Avatar
FxM
Bonsoir,

Je te recommande de jeter un oeil sur fun customize chez notre chef à
plumes http://longre.free.fr
SVP arrêtez de me cliquer dessus ou de me sélectionner :o)

@+
FxM


Leo wrote:
Bonsoir,
Je suppose que ceci est fait pour mettre de l'aide dans le fichier d'aide.
( je vais y jetter un regard interressé )
Par contre, je me suis mal exprimé.
Je souhaitais en fait, mettre de l'aide ou du moins une description dans la
boite de dialogue qui s'ouvre si l'on sélectionne la cellule contenant la
fonction et que selectionne Fx.
La boite de dialogue affichée, donne une description de la fonction, ainsi
qu'une description des différents paramètres de la fonction, si on les
selectionne. C'est ces éléments que je souhaite renseigner.

Merci ,

Amicalement,
Leo
---------------------------------------------
Pour les riders, BMX, VTT. Un seul site :
Little Big Trail : http://perso.wanadoo.fr/lbt/
---------------------------------------------

"Leo" a écrit dans le message de
news:c1thqi$p8r$

Bonsoir,

Je souhaite mettre l'aide directement dans une fonction, lorsque celle ci
est selectionnée. Pour l'aide générale, j'ai trouvé :

Application.MacroOptions Macro:="bidule", Description:="commentaire


général

", ShortcutKey:=""

Pas de soucis le commentaire apparait , mais par contre, lorsque l'on
selectionne les arguments, je souhaite
également mettre l'aide associée et directement dans la macro ?

Comment faire ?

--


Amicalement,
Leo
---------------------------------------------
Pour les riders, BMX, VTT. Un seul site :
Little Big Trail : http://perso.wanadoo.fr/lbt/
---------------------------------------------









Avatar
Pierre Fauconnier
Re...

Je précise que, normalement, tu dois insérer le code d'enregistrement dans
le workbook_open du classeur, de manière à ce qu'il enregistre la fonction à
l'ouverture, au cas où tu exportes le classeur sur un autre pc...


--
Cela convient-il?
----
Pierre Fauconnier
"Si j'étais Dieu, je démissionnerais pour que les gens arrêtent de se battre
en mon nom." (Le Chat...)
(remplacer NOSPAM par pfi.be pour me répondre. Merci)


---
Leo wrote:
Bonsoir,
Je suppose que ceci est fait pour mettre de l'aide dans le fichier
d'aide. ( je vais y jetter un regard interressé )
Par contre, je me suis mal exprimé.
Je souhaitais en fait, mettre de l'aide ou du moins une description
dans la boite de dialogue qui s'ouvre si l'on sélectionne la cellule
contenant la fonction et que selectionne Fx.
La boite de dialogue affichée, donne une description de la fonction,
ainsi qu'une description des différents paramètres de la fonction, si
on les selectionne. C'est ces éléments que je souhaite renseigner.

Merci ,

Amicalement,
Leo
---------------------------------------------
Pour les riders, BMX, VTT. Un seul site :
Little Big Trail : http://perso.wanadoo.fr/lbt/
---------------------------------------------

"Leo" a écrit dans le message de
news:c1thqi$p8r$

Bonsoir,

Je souhaite mettre l'aide directement dans une fonction, lorsque
celle ci est selectionnée. Pour l'aide générale, j'ai trouvé :

Application.MacroOptions Macro:="bidule", Description:="commentaire
général ", ShortcutKey:=""

Pas de soucis le commentaire apparait , mais par contre, lorsque l'on
selectionne les arguments, je souhaite
également mettre l'aide associée et directement dans la macro ?

Comment faire ?

--


Amicalement,
Leo
---------------------------------------------
Pour les riders, BMX, VTT. Un seul site :
Little Big Trail : http://perso.wanadoo.fr/lbt/
---------------------------------------------




Avatar
Leo
Je vous remercie tous pour la célérité de vos bonnes réponses.


Oserais vous demander le Livre que vous me conseillez pour VBA Excel ?

J'ai de bonnes notions de programmations mais je ne connais pas VBAXL

--


Amicalement,
Leo
---------------------------------------------
Pour les riders, BMX, VTT. Un seul site :
Little Big Trail : http://perso.wanadoo.fr/lbt/
---------------------------------------------

"Pierre Fauconnier" a écrit dans le message de
news:eGYVWbx$
Re...

Je précise que, normalement, tu dois insérer le code d'enregistrement dans
le workbook_open du classeur, de manière à ce qu'il enregistre la fonction
à

l'ouverture, au cas où tu exportes le classeur sur un autre pc...


--
Cela convient-il?
----
Pierre Fauconnier
"Si j'étais Dieu, je démissionnerais pour que les gens arrêtent de se
battre

en mon nom." (Le Chat...)
(remplacer NOSPAM par pfi.be pour me répondre. Merci)


---
Leo wrote:
Bonsoir,
Je suppose que ceci est fait pour mettre de l'aide dans le fichier
d'aide. ( je vais y jetter un regard interressé )
Par contre, je me suis mal exprimé.
Je souhaitais en fait, mettre de l'aide ou du moins une description
dans la boite de dialogue qui s'ouvre si l'on sélectionne la cellule
contenant la fonction et que selectionne Fx.
La boite de dialogue affichée, donne une description de la fonction,
ainsi qu'une description des différents paramètres de la fonction, si
on les selectionne. C'est ces éléments que je souhaite renseigner.

Merci ,

Amicalement,
Leo
---------------------------------------------
Pour les riders, BMX, VTT. Un seul site :
Little Big Trail : http://perso.wanadoo.fr/lbt/
---------------------------------------------

"Leo" a écrit dans le message de
news:c1thqi$p8r$

Bonsoir,

Je souhaite mettre l'aide directement dans une fonction, lorsque
celle ci est selectionnée. Pour l'aide générale, j'ai trouvé :

Application.MacroOptions Macro:="bidule", Description:="commentaire
général ", ShortcutKey:=""

Pas de soucis le commentaire apparait , mais par contre, lorsque l'on
selectionne les arguments, je souhaite
également mettre l'aide associée et directement dans la macro ?

Comment faire ?

--


Amicalement,
Leo
---------------------------------------------
Pour les riders, BMX, VTT. Un seul site :
Little Big Trail : http://perso.wanadoo.fr/lbt/
---------------------------------------------








Avatar
Pierre Fauconnier
Salut FxM :)




FxM wrote:
Bonsoir,

Je te recommande de jeter un oeil sur fun customize chez notre chef à
plumes http://longre.free.fr
SVP arrêtez de me cliquer dessus ou de me sélectionner :o)

@+
FxM


Leo wrote:
Bonsoir,
Je suppose que ceci est fait pour mettre de l'aide dans le fichier
d'aide. ( je vais y jetter un regard interressé )
Par contre, je me suis mal exprimé.
Je souhaitais en fait, mettre de l'aide ou du moins une description
dans la boite de dialogue qui s'ouvre si l'on sélectionne la cellule
contenant la fonction et que selectionne Fx.
La boite de dialogue affichée, donne une description de la fonction,
ainsi qu'une description des différents paramètres de la fonction,
si on les selectionne. C'est ces éléments que je souhaite renseigner.

Merci ,

Amicalement,
Leo
---------------------------------------------
Pour les riders, BMX, VTT. Un seul site :
Little Big Trail : http://perso.wanadoo.fr/lbt/
---------------------------------------------

"Leo" a écrit dans le message de
news:c1thqi$p8r$

Bonsoir,

Je souhaite mettre l'aide directement dans une fonction, lorsque
celle ci est selectionnée. Pour l'aide générale, j'ai trouvé :

Application.MacroOptions Macro:="bidule", Description:="commentaire


général

", ShortcutKey:=""

Pas de soucis le commentaire apparait , mais par contre, lorsque
l'on selectionne les arguments, je souhaite
également mettre l'aide associée et directement dans la macro ?

Comment faire ?

--


Amicalement,
Leo
---------------------------------------------
Pour les riders, BMX, VTT. Un seul site :
Little Big Trail : http://perso.wanadoo.fr/lbt/
---------------------------------------------






Avatar
FxM
Pierre Fauconnier wrote:
Salut FxM :)



Bonsoir Pierre,
Ca roule ? :o)

F(x)

Avatar
garnote
Salut Léo,

Plusieurs il y a, mais j'aime bien :

Excel et VBA
Mikaël Bidault
CampusPress
ISBN : 2-7440-1502-4

Il est en livre de poche, ce qui n'est pas un
mince avantage quand on veut le consulter.
Pas besoin de s'acheter un lutrin !

Serge




"Leo" a écrit dans le message de news:
c1tqv5$omu$
Je vous remercie tous pour la célérité de vos bonnes réponses.


Oserais vous demander le Livre que vous me conseillez pour VBA Excel ?

J'ai de bonnes notions de programmations mais je ne connais pas VBAXL

--


Amicalement,
Leo
---------------------------------------------
Pour les riders, BMX, VTT. Un seul site :
Little Big Trail : http://perso.wanadoo.fr/lbt/
---------------------------------------------

"Pierre Fauconnier" a écrit dans le message de
news:eGYVWbx$
Re...

Je précise que, normalement, tu dois insérer le code d'enregistrement
dans


le workbook_open du classeur, de manière à ce qu'il enregistre la
fonction


à
l'ouverture, au cas où tu exportes le classeur sur un autre pc...


--
Cela convient-il?
----
Pierre Fauconnier
"Si j'étais Dieu, je démissionnerais pour que les gens arrêtent de se
battre

en mon nom." (Le Chat...)
(remplacer NOSPAM par pfi.be pour me répondre. Merci)


---
Leo wrote:
Bonsoir,
Je suppose que ceci est fait pour mettre de l'aide dans le fichier
d'aide. ( je vais y jetter un regard interressé )
Par contre, je me suis mal exprimé.
Je souhaitais en fait, mettre de l'aide ou du moins une description
dans la boite de dialogue qui s'ouvre si l'on sélectionne la cellule
contenant la fonction et que selectionne Fx.
La boite de dialogue affichée, donne une description de la fonction,
ainsi qu'une description des différents paramètres de la fonction, si
on les selectionne. C'est ces éléments que je souhaite renseigner.

Merci ,

Amicalement,
Leo
---------------------------------------------
Pour les riders, BMX, VTT. Un seul site :
Little Big Trail : http://perso.wanadoo.fr/lbt/
---------------------------------------------

"Leo" a écrit dans le message de
news:c1thqi$p8r$

Bonsoir,

Je souhaite mettre l'aide directement dans une fonction, lorsque
celle ci est selectionnée. Pour l'aide générale, j'ai trouvé :

Application.MacroOptions Macro:="bidule", Description:="commentaire
général ", ShortcutKey:=""

Pas de soucis le commentaire apparait , mais par contre, lorsque l'on
selectionne les arguments, je souhaite
également mettre l'aide associée et directement dans la macro ?

Comment faire ?

--


Amicalement,
Leo
---------------------------------------------
Pour les riders, BMX, VTT. Un seul site :
Little Big Trail : http://perso.wanadoo.fr/lbt/
---------------------------------------------












1 2