Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

faire appel à une fonction VBA dans une cellule

3 réponses
Avatar
Caribou
Bonsoir,
Je n'arrive pas à appeler dans une cellule une fonction VBA Function
toto() placée, non pas dans un module, mais dans l'objet Feuil1

Est ce possible ?


--- Site Perso : http://anthop.free.fr ---

3 réponses

Avatar
Frédéric Sigonneau
Bonsoir,

Une fonction perso VBA *doit* être dans un module standard pour être utilisée
dans une feuille de calcul. Depuis un autre module (de feuille, ThisWorkbook,
etc), elle doit être 'pleinement qualifiée' pour être accessible, par exemple :

Sub test()
MsgBox Feuil1.toto
End Sub

FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !


Bonsoir,
Je n'arrive pas à appeler dans une cellule une fonction VBA Function
toto() placée, non pas dans un module, mais dans l'objet Feuil1

Est ce possible ?

--- Site Perso : http://anthop.free.fr ---


Avatar
Utilise soit l'évènement de feuille "worksheet
selectionchange" soit "worksheet calculate"
soit "worksheet change". c'est comme tu veux ou comme tu
décides du type d'évènements pour lequel ta macro doit
être déclenchée.
Lors de cet évènement, une macro ( procédure ou
fonction,..) attachée à cet évènement se déclenche selon
tes souhaits.
Si tu ne sais pas déclencher des évènements de feuille,
va dans le visual basic editor, clique dans la fenêtre
vba project sur la feuille où tu veux que tes évènements
se déclenchent.Dans la fenêtre de droite, dans le menu
déroulant où il y a marqué "General", clique sur la
flèche et selectionnes worksheet, puis dans le menu
déroulant à droite, clique sur l'évènement que tu
souhaites sélectionner pour lancer ta macro (tu verras,
il ya plusieurs types d'évènements. si tu ne les
comprends pas, je te conseille de te référer à l'aide de
VBA) . N'oublie pas que selon l'évènement que tu
sélectionnes, uen adresse de cellule te sera impérative
pour que ta macro soit lancée (cette adresse sera repérée
par l'adresse de "target") . Tu comprendras certainement
mieux si tu essayes.

A ta dispo si tu as besoin d'éléments manquants

-----Message d'origine-----
Bonsoir,
Je n'arrive pas à appeler dans une cellule une fonction
VBA Function

toto() placée, non pas dans un module, mais dans
l'objet Feuil1


Est ce possible ?


--- Site Perso : http://anthop.free.fr ---


.



Avatar
Caribou
Merci, je vais regarder ça


a écrit dans le message de
news:3a6301c3e390$f78fd460$
Utilise soit l'évènement de feuille "worksheet
selectionchange" soit "worksheet calculate"
soit "worksheet change". c'est comme tu veux ou comme tu
décides du type d'évènements pour lequel ta macro doit
être déclenchée.
Lors de cet évènement, une macro ( procédure ou
fonction,..) attachée à cet évènement se déclenche selon
tes souhaits.
Si tu ne sais pas déclencher des évènements de feuille,
va dans le visual basic editor, clique dans la fenêtre
vba project sur la feuille où tu veux que tes évènements
se déclenchent.Dans la fenêtre de droite, dans le menu
déroulant où il y a marqué "General", clique sur la
flèche et selectionnes worksheet, puis dans le menu
déroulant à droite, clique sur l'évènement que tu
souhaites sélectionner pour lancer ta macro (tu verras,
il ya plusieurs types d'évènements. si tu ne les
comprends pas, je te conseille de te référer à l'aide de
VBA) . N'oublie pas que selon l'évènement que tu
sélectionnes, uen adresse de cellule te sera impérative
pour que ta macro soit lancée (cette adresse sera repérée
par l'adresse de "target") . Tu comprendras certainement
mieux si tu essayes.

A ta dispo si tu as besoin d'éléments manquants

-----Message d'origine-----
Bonsoir,
Je n'arrive pas à appeler dans une cellule une fonction
VBA Function

toto() placée, non pas dans un module, mais dans
l'objet Feuil1


Est ce possible ?


--- Site Perso : http://anthop.free.fr ---


.