Page 2 of 2

Re: REMPLACER UN MOT DANS UN TEXTE FORMAT .odt

Posted: 23 Jul 2020, 16:36
by joedf
Je n’ai pas installé libreoffice, mais il me semble que Ctrl+P devrait ouvrir un aperçu ? Peux-tu confirmer?

Re: REMPLACER UN MOT DANS UN TEXTE FORMAT .odt

Posted: 24 Jul 2020, 04:11
by alexooo
CTRL + P = IMPRESSION
CTRL+ MAJ + O (ce qui a de par défaut) = aperçu :dance:

Re: REMPLACER UN MOT DANS UN TEXTE FORMAT .odt

Posted: 24 Jul 2020, 09:58
by joedf
Dans ce cas, je pense qu'on peut faire qqch dans ce genre:

Code: Select all

; 1 : le remplacement de texte et création du nouveau doc.odt (ce que le script fait bien)
; code ...
LeFichierODT := "C:\Utilisateurs\Admin\Documents\MonFichier.odt"


; 2 : l'aperçu du nouveau doc.odt j'insiste sur l'aperçu qui peut ce matérialiser par 
; l'ouverture du nouveau doc.odt (étape qui me permet de contrôler les remplacements 
; fait et me montré un erreur de saisie)

; ouvrir le doc avec libreoffice
Run, libreoffice.exe "%LeFichierODT%",,,libreofficePID

sleep 1000 ; attendre 1 seconde
; attendre pour l'apparition de la fenêtre
WinWait , ahk_pid %libreofficePID%,, 3 ; timeout de 3 secondes

; libreoffice est là et prêt, ouvrir l’aperçu avec CTRL+ MAJ + O
ControlSend,, ^+o, ahk_pid %libreofficePID%


; 3 : proposition oui ou non d'impression
; l'utilisateur a fermé libreoffice, impression?
MsgBox, 36, , Voulez-vous imprimer le document modifié?
IfMsgBox, Yes 
{
	; 4 : action d'impression sur le cas ou oui est choisie sur la msgbox évidemment 
	; Oui, on imprime le document!
	Run, libreoffice.exe -p "%LeFichierODT%"
} else {
	; Non, on fait rien...
}

Re: REMPLACER UN MOT DANS UN TEXTE FORMAT .odt

Posted: 26 Jul 2020, 03:26
by alexooo
Bonjour ! Je viens apporter plus d'information :

La phase 1
1 : le remplacement de texte et création du nouveau doc.odt (ce que le script fait bien)
; code ...
LeFichierODT := "C:\Utilisateurs\Admin\Documents\MonFichier.odt" < Joedf, je peux pas éviter de mettre une recherche "répertoire ou accès au sous document afin de récuperer le doc a ouvrir en faisant :
LeFichierODT := "%newFile%" < Tu sais le script quand il remplace les mots un nouveau fichier est créer peut t'on pas le reprendre directement dans la formule de manière a ce que ce soit successif ?

La phase 2 :
2 ; ouvrir le doc avec libreoffice
Run, libreoffice.exe "%LeFichierODT%",,,libreofficePID < libreoffice ne s'ouvre pas !, sous le gestionnaire de tâche libreoffice s'ouvre en 2 fois et ce nomme soffice.bin et soffice.exe

Etape 3 et 4 non testé car des erreurs sont intervenues avant.

Veux-tu le dernier script en cours ?

Merci pour ton aide.

Re: REMPLACER UN MOT DANS UN TEXTE FORMAT .odt

Posted: 28 Jul 2020, 09:27
by joedf
Il me semble que soffice.exe c'est open office. peu importe... :think:
Il suffit de faire quelques remplacements:

Code: Select all

; 1 : le remplacement de texte et création du nouveau doc.odt (ce que le script fait bien)
; code ...
LeFichierODT := newFile


; 2 : l'aperçu du nouveau doc.odt j'insiste sur l'aperçu qui peut ce matérialiser par 
; l'ouverture du nouveau doc.odt (étape qui me permet de contrôler les remplacements 
; fait et me montré un erreur de saisie)

; ouvrir le doc avec libreoffice
Run, soffice.exe "%LeFichierODT%",,,libreofficePID

sleep 1000 ; attendre 1 seconde
; attendre pour l'apparition de la fenêtre
WinWait , ahk_pid %libreofficePID%,, 3 ; timeout de 3 secondes

; libreoffice est là et prêt, ouvrir l’aperçu avec CTRL+ MAJ + O
ControlSend,, ^+o, ahk_pid %libreofficePID%


; 3 : proposition oui ou non d'impression
; l'utilisateur a fermé libreoffice, impression?
MsgBox, 36, , Voulez-vous imprimer le document modifié?
IfMsgBox, Yes 
{
	; 4 : action d'impression sur le cas ou oui est choisie sur la msgbox évidemment 
	; Oui, on imprime le document!
	Run, soffice.exe -p "%LeFichierODT%"
} else {
	; Non, on fait rien...
}