Optimisation d'une macro basique

Postez ici si vous avez des difficultés a comprendre une commande, ou a créer une macro.
Répondre
Seph
Messages : 2
Enregistré le : 29 août 2023, 20:36

Optimisation d'une macro basique

Message par Seph » 29 août 2023, 20:50

Bonjour à tous,

J'utilise supermacro depuis quelques temps mais je suis clairement débutant en programmation. L'execution de ma macro n'est pas assez rapide malgré un temps de pause au minimum (1 ms) et un déplacement de souris instantanné. Si je retire les pauses, mon pc ne suit pas et plante. Je cherche donc à optimiser ma macro. Je pourrais résumer la macro comme ceci :
- cliquer sur une fenêtre
- executer des frappes de touches
- cliquer sur une seconde fenêtre
- executer les mêmes frappes de touches

Et ce pour 5 fenêtres différentes.
J'ai pensé à une boucle qui répèterait les executions de frappes de touches mais je ne sais pas comment correctement affecter les coordonnées de clique sur telle ou telle fenêtre...

Des idées d'optimisation pour une execution plus rapide ? Merci d'avance

La macro en question :

Code : Tout sélectionner

Label	1
Move Mouse	520;89;Direct;
Click	Left Down;
Click	Left Up;
Click	Left Down;
Click	Left Up;
Type Special	C;
Type Special	T;
Type Special	&;
Type Special	é;
Type Special	";
Type Special	E;
Type Special	1 (PAVE NUM.);
Type Special	2 (PAVE NUM.);
Type Special	3 (PAVE NUM.);
Type Special	4 (PAVE NUM.);
Click	Left Down;
Click	Left Up;
Click	Left Down;
Click	Left Up;
Move Mouse	1173;82;Direct;
Click	Left Down;
Click	Left Up;
Click	Left Down;
Type Special	C;
Type Special	T;
Type Special	&;
Type Special	é;
Type Special	";
Type Special	E;
Type Special	1 (PAVE NUM.);
Type Special	2 (PAVE NUM.);
Type Special	3 (PAVE NUM.);
Type Special	4 (PAVE NUM.);
Click	Left Down;
Click	Left Up;
Click	Left Down;
Click	Left Up;
Move Mouse	1809;86;Direct;
Click	Left Down;
Click	Left Up;
Click	Left Down;
Click	Left Up;
Type Special	C;
Type Special	T;
Type Special	&;
Type Special	é;
Type Special	";
Type Special	E;
Type Special	1 (PAVE NUM.);
Type Special	2 (PAVE NUM.);
Type Special	3 (PAVE NUM.);
Type Special	4 (PAVE NUM.);
Click	Left Down;
Click	Left Up;
Click	Left Down;
Click	Left Up;
Move Mouse	536;628;Direct;
Click	Left Down;
Click	Left Up;
Click	Left Down;
Click	Left Up;
Type Special	C;
Type Special	T;
Type Special	&;
Type Special	é;
Type Special	";
Type Special	E;
Type Special	1 (PAVE NUM.);
Type Special	2 (PAVE NUM.);
Type Special	3 (PAVE NUM.);
Type Special	4 (PAVE NUM.);
Click	Left Down;
Click	Left Up;
Click	Left Down;
Click	Left Up;
Move Mouse	1187;640;Direct;
Click	Left Down;
Click	Left Up;
Click	Left Down;
Click	Left Up;
Type Special	C;
Type Special	T;
Type Special	&;
Type Special	é;
Type Special	";
Type Special	E;
Type Special	1 (PAVE NUM.);
Type Special	2 (PAVE NUM.);
Type Special	3 (PAVE NUM.);
Type Special	4 (PAVE NUM.);
Click	Left Down;
Click	Left Up;
Click	Left Down;
Click	Left Up;
Goto	1

Avatar du membre
Onissius
Messages : 753
Enregistré le : 11 avr. 2014, 22:47
Localisation : Lyon (France)
Contact :

Re: Optimisation d'une macro basique

Message par Onissius » 02 sept. 2023, 03:29

Tes séries de cliques, fait 1 double clique.
Tu tape ton texte touche par touche, pourquoi ne pas utiliser "Frappe de texte" à la place ?
Pour le texte tu peux aussi utiliser une variable qui contient le texte à taper.
Pour sélectionner tes fenêtres, pourquoi ne pas utiliser la fonction "Handle" ?

A toi d'ajouter les Handle pour sélectionner la fenêtre que tu souhaite utiliser à ce code.

Code : Tout sélectionner

Variable	<Texte>;CT&é"E1234;Alpha;
Commentaire	
Label	<Debut>
Commentaire	
Commentaire	Fenêtre 01
Move Mouse	520;89;Direct;
Click	Left double-click;
Type	<Texte>
Click	Left double-click;
Commentaire	
Commentaire	Fenêtre 02
Move Mouse	1173;82;Direct;
Click	Left double-click;
Type	<Texte>
Click	Left double-click;
Commentaire	
Commentaire	Fenêtre 03
Move Mouse	1809;86;Direct;
Click	Left double-click;
Type	<Texte>
Click	Left double-click;
Commentaire	
Commentaire	Fenêtre 04
Move Mouse	536;628;Direct;
Click	Left double-click;
Type	<Texte>
Click	Left double-click;
Commentaire	
Commentaire	Fenêtre 05
Move Mouse	1187;640;Direct;
Click	Left double-click;
Type	<Texte>
Click	Left double-click;
Commentaire	
Commentaire	
Goto	<Debut>
J'ai découvert SM en 99, rapidement Adam m'a promu admin.
Posez vos questions aussi clairement que possible, sans fautes qui piquent les yeux et relisez vous.
Vérifiez sur mon DISCORD si je suis en ligne.

Seph
Messages : 2
Enregistré le : 29 août 2023, 20:36

Re: Optimisation d'une macro basique

Message par Seph » 03 sept. 2023, 11:05

Merci pour ta réponse ! Dans mon cas, la frappe de texte ne fonctionne pas, comme si la touche du clavier n'était pas actionnée dans le processus.

Concernant le double clic, je n'avais pas l'option avec ma version de super macro. J'ai téléchargé la version beta, le double clic y est présent. Seulement les frappes de touches ne marchent plus sur cette version, même en utilisant mon ancien programme.

Une idée de l'option qui pourrait causer cette différence ?

Avatar du membre
Onissius
Messages : 753
Enregistré le : 11 avr. 2014, 22:47
Localisation : Lyon (France)
Contact :

Re: Optimisation d'une macro basique

Message par Onissius » 05 sept. 2023, 00:59

Tu lance SM en administrateur ?
J'ai découvert SM en 99, rapidement Adam m'a promu admin.
Posez vos questions aussi clairement que possible, sans fautes qui piquent les yeux et relisez vous.
Vérifiez sur mon DISCORD si je suis en ligne.

Répondre