J'utilise des macros compl=E9mentaires, qui elles m=EAme utilisent un
programme externe =E0 Excel.
Les programmes externes me permettent de me connecter =E0 une
application est de r=E9cup=E9rer des donn=E9es en fonction de crit=E8res qu=
i
sont saisis dans la feuille. Je clique sur un bouton, qui se trouve
sur la feuille et je r=E9cup=E8re mes infos
Je voudrais pouvoir utiliser ces programmes sans passer par une
feuille Excel.
Or =E0 aucun endroit il n'est indiqu=E9 dans le code VBA des macros
compl=E9mentaires (celle qui font appellent aux programmes externes) une
r=E9f=E9rence aux informations saisies dans la feuille.
Je suppose que les programmes externes re=E7oivent des informations de
la variable Me (suite au clique sur le bouton dans la feuille).
Comme j'aimerais pouvoir utiliser ces programmes sans feuille,
j'aurais souhait=E9 savoir s'il est possible de modifier la variable Me,
ou de l'instancier avec ce que je veux ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Fdecourt
Merci Michdenis pour cette longue explication. Je me suis débrouillé autrement (c'est pas propre, mais cela fonctionne), en ajoutant par macro un bouton sur la feuille qui appelle les programmes externe.
Cordialement,
F.
On 30 avr, 04:28, "MichDenis" wrote:
Bonjour FdeCourt,
Le mot "Me" s'emploie seulement dans un module de classe. Dans Excel, à part des modules "standard", tous les modules (Feuil, ThisWorkbook, Userform, insertion d'un module de classe) où l'on saisit du code sont des modules de classe.
En fait, le petit mot Me représente l'objet de la classe lui-même.
Un petit exemple : Pour signifier le module module de classe "Feuil1" dans du code, on peut écrire Feuil1.range().... Dans ce cas, Feuil1 représen te la propriété "Name" de l'objet feuille visible dans la fenêtre de l'éditeur de cod e. Me, si l'on veut c'est le terme générique pour tous les modules de classe. O n aurait pu écrire : Me.Range()...
Le mot "Me" se limite à représenter le module de classe dans lequel i l est utilisé. On ne peut pas utiliser le mot "Me" pour faire référence à un autre module de classe à l'extérieur du module de classe où il est utilisé(écri t).
En conséquence, si dans le code d'un module de classe d'Excel, tu obser ves l'expression "Me", Tu peux le substituer par la propriété Name du mod ule de classe.
Par code, on peut créer une instance de l'application Excel. Le fait qu e cette instance soit visible est une option et non une nécessité. Ce cette i nstance on peut créer des feuilles, les utiliser pour des opérations interm édiaires et ne conserver que le résultat dans le médium de son choix. Après son utilisation, l'instance d'Excel est supprimée de la mémoire.
"FdeCourt" a écrit dans le message de groupe de di scussion : ... Bonjour,
J'utilise des macros complémentaires, qui elles même utilisent un programme externe à Excel.
Les programmes externes me permettent de me connecter à une application est de récupérer des données en fonction de critères qui sont saisis dans la feuille. Je clique sur un bouton, qui se trouve sur la feuille et je récupère mes infos
Je voudrais pouvoir utiliser ces programmes sans passer par une feuille Excel. Or à aucun endroit il n'est indiqué dans le code VBA des macros complémentaires (celle qui font appellent aux programmes externes) une référence aux informations saisies dans la feuille.
Je suppose que les programmes externes reçoivent des informations de la variable Me (suite au clique sur le bouton dans la feuille).
Comme j'aimerais pouvoir utiliser ces programmes sans feuille, j'aurais souhaité savoir s'il est possible de modifier la variable Me, ou de l'instancier avec ce que je veux ?
Je vous remercie
Cordialement,
Merci Michdenis pour cette longue explication.
Je me suis débrouillé autrement (c'est pas propre, mais cela
fonctionne), en ajoutant par macro un bouton sur la feuille qui
appelle les programmes externe.
Cordialement,
F.
On 30 avr, 04:28, "MichDenis" <michde...@hotmail.com> wrote:
Bonjour FdeCourt,
Le mot "Me" s'emploie seulement dans un module de classe.
Dans Excel, à part des modules "standard", tous les modules
(Feuil, ThisWorkbook, Userform, insertion d'un module de classe)
où l'on saisit du code sont des modules de classe.
En fait, le petit mot Me représente l'objet de la classe lui-même.
Un petit exemple :
Pour signifier le module module de classe "Feuil1" dans du code,
on peut écrire Feuil1.range().... Dans ce cas, Feuil1 représen te la propriété
"Name" de l'objet feuille visible dans la fenêtre de l'éditeur de cod e. Me, si
l'on veut c'est le terme générique pour tous les modules de classe. O n aurait
pu écrire : Me.Range()...
Le mot "Me" se limite à représenter le module de classe dans lequel i l est utilisé.
On ne peut pas utiliser le mot "Me" pour faire référence à un autre module de
classe à l'extérieur du module de classe où il est utilisé(écri t).
En conséquence, si dans le code d'un module de classe d'Excel, tu obser ves
l'expression "Me", Tu peux le substituer par la propriété Name du mod ule
de classe.
Par code, on peut créer une instance de l'application Excel. Le fait qu e cette
instance soit visible est une option et non une nécessité. Ce cette i nstance
on peut créer des feuilles, les utiliser pour des opérations interm édiaires
et ne conserver que le résultat dans le médium de son choix. Après son
utilisation, l'instance d'Excel est supprimée de la mémoire.
"FdeCourt" <fdeco...@gmail.com> a écrit dans le message de groupe de di scussion : 354d1777-40af-47ba-8be0-bbcf69396...@u9g2000pre.googlegroups.com ...
Bonjour,
J'utilise des macros complémentaires, qui elles même utilisent un
programme externe à Excel.
Les programmes externes me permettent de me connecter à une
application est de récupérer des données en fonction de critères qui
sont saisis dans la feuille. Je clique sur un bouton, qui se trouve
sur la feuille et je récupère mes infos
Je voudrais pouvoir utiliser ces programmes sans passer par une
feuille Excel.
Or à aucun endroit il n'est indiqué dans le code VBA des macros
complémentaires (celle qui font appellent aux programmes externes) une
référence aux informations saisies dans la feuille.
Je suppose que les programmes externes reçoivent des informations de
la variable Me (suite au clique sur le bouton dans la feuille).
Comme j'aimerais pouvoir utiliser ces programmes sans feuille,
j'aurais souhaité savoir s'il est possible de modifier la variable Me,
ou de l'instancier avec ce que je veux ?
Merci Michdenis pour cette longue explication. Je me suis débrouillé autrement (c'est pas propre, mais cela fonctionne), en ajoutant par macro un bouton sur la feuille qui appelle les programmes externe.
Cordialement,
F.
On 30 avr, 04:28, "MichDenis" wrote:
Bonjour FdeCourt,
Le mot "Me" s'emploie seulement dans un module de classe. Dans Excel, à part des modules "standard", tous les modules (Feuil, ThisWorkbook, Userform, insertion d'un module de classe) où l'on saisit du code sont des modules de classe.
En fait, le petit mot Me représente l'objet de la classe lui-même.
Un petit exemple : Pour signifier le module module de classe "Feuil1" dans du code, on peut écrire Feuil1.range().... Dans ce cas, Feuil1 représen te la propriété "Name" de l'objet feuille visible dans la fenêtre de l'éditeur de cod e. Me, si l'on veut c'est le terme générique pour tous les modules de classe. O n aurait pu écrire : Me.Range()...
Le mot "Me" se limite à représenter le module de classe dans lequel i l est utilisé. On ne peut pas utiliser le mot "Me" pour faire référence à un autre module de classe à l'extérieur du module de classe où il est utilisé(écri t).
En conséquence, si dans le code d'un module de classe d'Excel, tu obser ves l'expression "Me", Tu peux le substituer par la propriété Name du mod ule de classe.
Par code, on peut créer une instance de l'application Excel. Le fait qu e cette instance soit visible est une option et non une nécessité. Ce cette i nstance on peut créer des feuilles, les utiliser pour des opérations interm édiaires et ne conserver que le résultat dans le médium de son choix. Après son utilisation, l'instance d'Excel est supprimée de la mémoire.
"FdeCourt" a écrit dans le message de groupe de di scussion : ... Bonjour,
J'utilise des macros complémentaires, qui elles même utilisent un programme externe à Excel.
Les programmes externes me permettent de me connecter à une application est de récupérer des données en fonction de critères qui sont saisis dans la feuille. Je clique sur un bouton, qui se trouve sur la feuille et je récupère mes infos
Je voudrais pouvoir utiliser ces programmes sans passer par une feuille Excel. Or à aucun endroit il n'est indiqué dans le code VBA des macros complémentaires (celle qui font appellent aux programmes externes) une référence aux informations saisies dans la feuille.
Je suppose que les programmes externes reçoivent des informations de la variable Me (suite au clique sur le bouton dans la feuille).
Comme j'aimerais pouvoir utiliser ces programmes sans feuille, j'aurais souhaité savoir s'il est possible de modifier la variable Me, ou de l'instancier avec ce que je veux ?