@Fs Texte prof c'est le nom du style dans lequel tous les caractéres seront remplacé par des __ tu ouvres un doc de test tu crais un style Texte prof puis tu l'appliques à une partie du texte. Apres ça tu charges et exécutes la macro. Pour ma première partie du script sensé faire la meme chose que la version en shell et bien ça ne marche pas et ça ne retourne aucune erreur... du coup je tourne en rond :/ Le 10 mai 2015 15:56, Cemoi Cemoi <matlane2014@gmail.com> a écrit :
@ Pierre C regarde plus haut la macro que j'ai mise elle fonctionne bien pour ce que tu veux faire. @ Pierre-Yves j'ai commencé à faire ça; post; sub main repBase="/home/cemoi/owncloud/perso/test_macro/" fichier = dir(repBase+"*_eleve*.odt") while fichier<>"" call traiteFichier(repBase+fichier) fichier = dir() wend end sub Mais je ne comprends pas tout ce que je fais là... :/ en fait je tente de faire ce que je fais deja en shell mais en basic... En shell ça donne ça: #! /bin/bash find /home/cemoi/Documents/cible -type f -iname "*cours*.odt" | while read name do new_name=$(echo $name|sed 's/\.odt$/_eleve.odt/') if [ "$name" -nt "$new_name" ] then cp "$name" "$new_name" fi done Ca parcours l'arborescense du repertoir cible en y cherchant tous les fichier odt ayant le mot cours (sans prendre en compte la casse) ça y ajoute le prefix _eleve au nom existant de chaque fichier trouvé puis ça copie le fichier si le fichier source fait le même poids si non non. à la suite dans la macro je voudrai ajouter le code Option Explicit Sub RemplacerStyle() Dim oDoc As Object, searchDescriptor As Object oDoc = ThisComponent searchDescriptor = oDoc.createReplaceDescriptor With searchDescriptor .SearchString = "Texte prof" .ReplaceString = "Blanc" .SearchStyles = true End With oDoc.replaceAll(searchDescriptor) End Sub pour l'appliquer en recursif sur le repertoir cible sur chaque fichier odt ayant le mot eleve et en fin faire l'export en pdf une fois les styles modifié. L'intéret de tout faire en basic c'est de pouvoir faire un .oxt une fois que tout ça fonctionnera. Merci pour votre aide precieuse! Cordialement, cemoi. Le 10 mai 2015 06:50, pierre-yves samyn <pierre-yves.samyn@laposte.net> a écrit :Bonjour Cemoi Cemoi wroteje comprends l'idée mais sans ... ou ___ ça va être moyen pour ecrire sur les documents.Oui... si je t'avais proposé d'utiliser le blanc. Or ma proposition était de recourir à un léger gris qui va créer l'équivalent visuel d'une zone de saisie. Je préfère cela à un souligné qui me rappelle trop les anciens documents administratifs à remplir. Choix subjectif donc... Par ailleurs j'ai le sentiment que cela sera plus rapide à l'exécution que le remplacement du texte. Ce n'est qu'un sentiment, je n'ai fait aucun essai, mais, compte tenu du volume de documents à traiter cela peut entrer en ligne de compte... Cemoi Cemoi wrote...je ne veux que le pdf de modifié et surtout pas le fichier source... ... La macro au depart doit parcourir l'arborescense pour trouver tousles...fichiers *.odt, ajouter le mot eleve au nom de chaque fichierSi tu appelles ta macro dans un script, pourquoi ne pas simplement copier en renommant tes documents dans le script puis manipuler ces copies dans ta macro ? Sinon, en basic tu peux utiliser la fonction GetFileNameWithoutExtension de la bibliothèque Tools, par exemple : dim sNomDoc as string, sNewNomDoc as string GlobalScope.BasicLibraries.LoadLibrary("Tools") sNomDoc = convertToUrl("c:\Tests\a.odt") sNewNomDoc = GetFileNameWithoutExtension(sNomDoc) sNewNomDoc = sNewNomDoc & "Eleve.odt" Name sNomDoc As sNewNomDoc Cordialement Pierre-Yves -- View this message in context: http://nabble.documentfoundation.org/masquer-un-style-a-l-impression-tp4146314p4148299.html Sent from the Users mailing list archive at Nabble.com. -- Envoyez un mail à users+unsubscribe@fr.libreoffice.org pour savoir comment vous désinscrire Les archives de la liste sont disponibles à http://listarchives.libreoffice.org/fr/users/ Tous les messages envoyés sur cette liste seront archivés publiquement et ne pourront pas être supprimés
-- Envoyez un mail à users+unsubscribe@fr.libreoffice.org pour savoir comment vous désinscrire Les archives de la liste sont disponibles à http://listarchives.libreoffice.org/fr/users/ Tous les messages envoyés sur cette liste seront archivés publiquement et ne pourront pas être supprimés