[VBA/API] récupérer le contenu de la fenêtre d’exécution
8 réponses
JièL
Salutatousses,
je n'arrive pas à trouver comment récupérer le contenu de la fenêtre
d’exécution du VBE via les API de Windows...
J'y arrive approximativement via les sendkeys, mais c'est tout sauf
fiable et le résultat est souvent aléatoire
Je sais, j'ai des questions tordues, mais bon, c'est mon besoin actuel.
Comme ça ne concerne pas franchement Excel, pouvez vous m'indiquer un
groupe ou un site qui cause des API ?
je n'arrive pas à trouver comment récupérer le contenu de la fenêtre d’exécution du VBE via les API de Windows... J'y arrive approximativement via les sendkeys, mais c'est tout sauf fiable et le résultat est souvent aléatoire
Je sais, j'ai des questions tordues, mais bon, c'est mon besoin actuel.
Comme ça ne concerne pas franchement Excel, pouvez vous m'indiquer un groupe ou un site qui cause des API ?
Merci d'avance
salut JièL,
as-tu essayé la solution de mercatog,
ici:
http://www.developpez.net/forums/d1321688/logiciels/microsoft-office/excel/macros-vba-excel/clear-fenetre-execution/
c'est pour effacer la fenetre d'execution, mais peut-être que tu y trouvera une
idée pour lire cette fenetre.
isabelle
Le 2016-05-25 06:11, JièL a écrit :
Salutatousses,
je n'arrive pas à trouver comment récupérer le contenu de la fenêtre d’exécution
du VBE via les API de Windows...
J'y arrive approximativement via les sendkeys, mais c'est tout sauf fiable et le
résultat est souvent aléatoire
Je sais, j'ai des questions tordues, mais bon, c'est mon besoin actuel.
Comme ça ne concerne pas franchement Excel, pouvez vous m'indiquer un groupe ou
un site qui cause des API ?
je n'arrive pas à trouver comment récupérer le contenu de la fenêtre d’exécution du VBE via les API de Windows... J'y arrive approximativement via les sendkeys, mais c'est tout sauf fiable et le résultat est souvent aléatoire
Je sais, j'ai des questions tordues, mais bon, c'est mon besoin actuel.
Comme ça ne concerne pas franchement Excel, pouvez vous m'indiquer un groupe ou un site qui cause des API ?
Merci d'avance
MichD
Bonjour,
La méthode la plus simple!!!
Dans un module standard, en haut de ce dernier, tu déclares une variable publique afin qu'elle soit accessible de tous les modules.
Et partout dans le code, en dessous de la ligne Debug.Print ... tu écris : Message = Message & vbcrlf
Au moment désiré, tu affiches le contenu de la variable "Message" dans un Msgbox message ou tu copies où tu le désires son contenu.
Il ne faut pas oublier de réinitialiser la variable au moment opportun afin que son contenu soit pertinent.
Tu cherches autre chose?
MichD
Bonjour,
La méthode la plus simple!!!
Dans un module standard, en haut de ce dernier, tu déclares une variable
publique afin qu'elle soit accessible de tous les modules.
Et partout dans le code, en dessous de la ligne
Debug.Print ... tu écris :
Message = Message & vbcrlf
Au moment désiré, tu affiches le contenu de la variable "Message" dans
un Msgbox message ou tu copies où tu le désires son contenu.
Il ne faut pas oublier de réinitialiser la variable au moment opportun
afin que son contenu soit pertinent.
c'est pour effacer la fenetre d'execution, mais peut-être que tu y trouvera une idée pour lire cette fenetre. isabelle
Le 2016-05-25 06:11, JièL a écrit :
Salutatousses,
je n'arrive pas à trouver comment récupérer le contenu de la fenêtre d’exécution du VBE via les API de Windows... J'y arrive approximativement via les sendkeys, mais c'est tout sauf fiable et le résultat est souvent aléatoire
Je sais, j'ai des questions tordues, mais bon, c'est mon besoin actuel.
Comme ça ne concerne pas franchement Excel, pouvez vous m'indiquer un groupe ou un site qui cause des API ?
Merci d'avance
MercIsabelle ;-)
j'ai essayé plein de truc, mais c'est pas stable/fiable à 100%, je
laisse tomber, je vais faire autrement
--
JièL re mer scieur
Le 25/05/2016 à 14:37, isabelle a écrit :
salut JièL,
as-tu essayé la solution de mercatog,
ici:
http://www.developpez.net/forums/d1321688/logiciels/microsoft-office/excel/macros-vba-excel/clear-fenetre-execution/
c'est pour effacer la fenetre d'execution, mais peut-être que tu y
trouvera une idée pour lire cette fenetre.
isabelle
Le 2016-05-25 06:11, JièL a écrit :
Salutatousses,
je n'arrive pas à trouver comment récupérer le contenu de la fenêtre
d’exécution
du VBE via les API de Windows...
J'y arrive approximativement via les sendkeys, mais c'est tout sauf
fiable et le
résultat est souvent aléatoire
Je sais, j'ai des questions tordues, mais bon, c'est mon besoin actuel.
Comme ça ne concerne pas franchement Excel, pouvez vous m'indiquer un
groupe ou
un site qui cause des API ?
c'est pour effacer la fenetre d'execution, mais peut-être que tu y trouvera une idée pour lire cette fenetre. isabelle
Le 2016-05-25 06:11, JièL a écrit :
Salutatousses,
je n'arrive pas à trouver comment récupérer le contenu de la fenêtre d’exécution du VBE via les API de Windows... J'y arrive approximativement via les sendkeys, mais c'est tout sauf fiable et le résultat est souvent aléatoire
Je sais, j'ai des questions tordues, mais bon, c'est mon besoin actuel.
Comme ça ne concerne pas franchement Excel, pouvez vous m'indiquer un groupe ou un site qui cause des API ?
Merci d'avance
JièL
Hello MichD
oui, je cherchais autre chose, mais visiblement le VBA n'est pas fait pour ça. Ton idée est bonne, mais mon problème est différent car ce n'est pas moi qui écrit dans la fenêtre d'Exécution, je voulais juste récupérer son contenu avec un bout de VBA ou d'API.
Mais c'est trop compliqué, je laisse tomber.
Merci pour l'idée
NB : inconvénient/avantage de ta méthode, la fenêtre d'exécution ne garde que 199 lignes, alors que Message = Message & vbcrlf garde tout.
-- JièL cher ch(i)eur ? ;-)
Le 25/05/2016 à 17:54, MichD a écrit :
Bonjour,
La méthode la plus simple!!!
Dans un module standard, en haut de ce dernier, tu déclares une variable publique afin qu'elle soit accessible de tous les modules.
Et partout dans le code, en dessous de la ligne Debug.Print ... tu écris : Message = Message & vbcrlf
Au moment désiré, tu affiches le contenu de la variable "Message" dans un Msgbox message ou tu copies où tu le désires son contenu.
Il ne faut pas oublier de réinitialiser la variable au moment opportun afin que son contenu soit pertinent.
Tu cherches autre chose?
MichD
Hello MichD
oui, je cherchais autre chose, mais visiblement le VBA n'est pas fait
pour ça.
Ton idée est bonne, mais mon problème est différent car ce n'est pas moi
qui écrit dans la fenêtre d'Exécution, je voulais juste récupérer son
contenu avec un bout de VBA ou d'API.
Mais c'est trop compliqué, je laisse tomber.
Merci pour l'idée
NB : inconvénient/avantage de ta méthode, la fenêtre d'exécution ne
garde que 199 lignes, alors que Message = Message & vbcrlf garde tout.
--
JièL cher ch(i)eur ? ;-)
Le 25/05/2016 à 17:54, MichD a écrit :
Bonjour,
La méthode la plus simple!!!
Dans un module standard, en haut de ce dernier, tu déclares une variable
publique afin qu'elle soit accessible de tous les modules.
Et partout dans le code, en dessous de la ligne
Debug.Print ... tu écris :
Message = Message & vbcrlf
Au moment désiré, tu affiches le contenu de la variable "Message" dans
un Msgbox message ou tu copies où tu le désires son contenu.
Il ne faut pas oublier de réinitialiser la variable au moment opportun
afin que son contenu soit pertinent.
oui, je cherchais autre chose, mais visiblement le VBA n'est pas fait pour ça. Ton idée est bonne, mais mon problème est différent car ce n'est pas moi qui écrit dans la fenêtre d'Exécution, je voulais juste récupérer son contenu avec un bout de VBA ou d'API.
Mais c'est trop compliqué, je laisse tomber.
Merci pour l'idée
NB : inconvénient/avantage de ta méthode, la fenêtre d'exécution ne garde que 199 lignes, alors que Message = Message & vbcrlf garde tout.
-- JièL cher ch(i)eur ? ;-)
Le 25/05/2016 à 17:54, MichD a écrit :
Bonjour,
La méthode la plus simple!!!
Dans un module standard, en haut de ce dernier, tu déclares une variable publique afin qu'elle soit accessible de tous les modules.
Et partout dans le code, en dessous de la ligne Debug.Print ... tu écris : Message = Message & vbcrlf
Au moment désiré, tu affiches le contenu de la variable "Message" dans un Msgbox message ou tu copies où tu le désires son contenu.
Il ne faut pas oublier de réinitialiser la variable au moment opportun afin que son contenu soit pertinent.
Tu cherches autre chose?
MichD
MichD
Le 25/05/16 à 12:48, JièL a écrit :
car ce n'est pas moi qui écrit dans la fenêtre d'Exécution
Peux-tu nous dire qui écrit dans cette fenêtre? Ça m'intrique!
Comment insères-tu cette information dans cette fenêtre?
Au lieu d'une variable message, tu peux appliquer la méthode que je proposais avec un objet Textbox dans la feuille de calcul de l'application Excel ou encore, écrite chaque ligne de code dans une feuille de calcul dédiée à cette tâche.
MichD
Le 25/05/16 à 12:48, JièL a écrit :
car ce n'est pas moi qui écrit dans la fenêtre d'Exécution
Peux-tu nous dire qui écrit dans cette fenêtre? Ça m'intrique!
Comment insères-tu cette information dans cette fenêtre?
Au lieu d'une variable message, tu peux appliquer la méthode que je
proposais avec un objet Textbox dans la feuille de calcul de
l'application Excel ou encore, écrite chaque ligne de code dans une
feuille de calcul dédiée à cette tâche.
car ce n'est pas moi qui écrit dans la fenêtre d'Exécution
Peux-tu nous dire qui écrit dans cette fenêtre? Ça m'intrique!
Comment insères-tu cette information dans cette fenêtre?
Au lieu d'une variable message, tu peux appliquer la méthode que je proposais avec un objet Textbox dans la feuille de calcul de l'application Excel ou encore, écrite chaque ligne de code dans une feuille de calcul dédiée à cette tâche.
MichD
pom...pom...pom..
Bonsour® "JièL" a écrit dans le message de groupe de discussion : 57457a4c$0$4553$
Salutatousses, Je sais, j'ai des questions tordues, mais bon, c'est mon besoin actuel. pouvez vous m'indiquer un groupe ou un site qui cause des API ?
"pom...pom...pom.." a écrit dans le message de groupe de discussion :
nid6te$1a5t$1@gioia.aioe.org...
voir là :
http://allapi.mentalis.org/apilist/apilist.php
peut-etre ??
GetWindowDC
GetDC