Bonjour,
Je reviens vers vous pour obtenir une explication et éventuellement une solution sur ce script qui fonctionne s'il est lancé avec Applescript et ne fonctionne pas s'il est lancé à partir d'Excel. Je dois beaucoup à l'aide apporté par PBell pour les instructions du script qui fonctionnent, en revanche la ligne 14 qui pose problème est de moi.
Je précise le comportement du script :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 on Impression() tell application "Mail" activate --a/ On simulee l'action clavier, à chaque fois qu'une commande est non scriptable tell application "System Events" --b/ On ouvre le dialogue d'impression avec le clavier par "command p", keystroke "p" using {command down} delay 0.25 --c/ Test pour connaître l'état du dialogue d'impression. -- c1- si le boutton "Afficher les détails" est présent (dialogue non déployer) -- Cliquer sur le bouton "Afficher les détails" pour déployer le dialogue d'impression. -- c2- si non ne rien faire(sous entendu) tell process "Mail" to tell sheet 1 of front window if exists button "Afficher les détails" then click button "Afficher les détails" end tell --d/ Sélection des options du dialogue d'impression qui est déployé -- on actionne 2 fois sur la touche tabulation, -- une 1ère fois pour passer de copies à pages -- une 2ème fois pour passer de 1 à 1 -- puis on actionne la touche "1" (la frappe de la touche 1 force le petit bouton devant !). keystroke tab keystroke tab delay 0.25 keystroke "1" -- e/ actionne la touche "retour" pour valider le dialogue d'impression. delay 0.25 keystroke return end tell end tell end Impression
1- Sans les lignes 13 à 15 - celles qui testent l'état du dialogue d'impression - le script fonctionne parfaitement qu'il soit lancé d'Excel ou d'AppelScript.
2- Avec les lignes 13 à 15, le script fonctionne entièrement s'il est lancé d'Appel script, il s'arrête de fonctionner à l'instruction 14 s'il est lancé d'Excel.
Quand je le lance d'Excel :
1- le dialogue d'impression s'affiche à l'écran et plus rien ne se passe; toutefois je peux poursuivre manuellement les actions du script dans le dialogue d'impression.
2- Aucun message d'erreur ne vient d'AppleScript. Dans la fenêtre du script appelé comme du script appelant, la cartouche "Resultat" est vide.
3- Un message d'erreur, lié au script s'affiche quand je retourne sur Excel.
C'est incompréhensible pour moi, cela dépasse mes capacités de programmation.
Merci pour votre aide.
Cordialement.
jf Zuinghedau
Partager