[Résolu][Writer] Exporter certaines pages d'un document
Modérateur : Vilains modOOs
Règles du forum
Balisage obligatoire dans cette section !
Aidez-nous à vous aider au mieux en balisant correctement votre question : reportez-vous sur les règles de cette section avant de poster !

Aidez-nous à vous aider au mieux en balisant correctement votre question : reportez-vous sur les règles de cette section avant de poster !
-
- Membre hOOnoraire
- Messages : 129
- Inscription : 15 déc. 2010 13:17
[Résolu][Writer] Exporter certaines pages d'un document
Bonjour à tous,
Pour un besoin spécifique, j'ai besoin d'exporter que certaines pages d'un document writer au même format car elles seront retravaillées de façons indivuduelles.
J'ai déjà trouvé comment faire l'export du document en entier, en lui donnant comme nom le texte d'une case d'un tableau (macro 1 dans le document joint)
A l'aire de de fil Export partiel d'une feuille Calc en PDF, j'ai essayé de mettre en place la macro dont j'ai besoin (dans le module 2). Mais j'obtiens le même résultat qu'avec la macro du module 1, tout le document est exporté.
Merci de votre aide et bon week end
Pour un besoin spécifique, j'ai besoin d'exporter que certaines pages d'un document writer au même format car elles seront retravaillées de façons indivuduelles.
J'ai déjà trouvé comment faire l'export du document en entier, en lui donnant comme nom le texte d'une case d'un tableau (macro 1 dans le document joint)
A l'aire de de fil Export partiel d'une feuille Calc en PDF, j'ai essayé de mettre en place la macro dont j'ai besoin (dans le module 2). Mais j'obtiens le même résultat qu'avec la macro du module 1, tout le document est exporté.
Merci de votre aide et bon week end
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Dernière modification par Virgule le 23 déc. 2013 18:18, modifié 1 fois.
LibreOffice Version: 4.1.6.2.0 et Windows 7 pro
-
- HédOOniste
- Messages : 1503
- Inscription : 30 déc. 2007 18:56
- Localisation : Lille
Re: [Writer] Exporter certaines pages d'un document
Bonjour,
AMHA, le paramètre "PageRange" de "filterprops" ne s'applique qu'à l'export vers le format PDF, c'est à dire avec le nom de filtre "writer_pdf_Export" dans "propFich" au lieu de "writer8" et l'extension "PDF" dans le nom du fichier.
Le filtre "writer8" exporte un document dans un autre format, ici c'est le même format : "document texte ODF" .
En espérant avoir été clair.
AMHA, le paramètre "PageRange" de "filterprops" ne s'applique qu'à l'export vers le format PDF, c'est à dire avec le nom de filtre "writer_pdf_Export" dans "propFich" au lieu de "writer8" et l'extension "PDF" dans le nom du fichier.
Le filtre "writer8" exporte un document dans un autre format, ici c'est le même format : "document texte ODF" .
En espérant avoir été clair.
MacOS Sequoia 15.5 (iMac-Intel) : AOO 4.1.15 , LibreOffice 24.8.5.2, Adoptium-temurinJDK 1.8.0_402, CCC, FireFox, Thunderbird, ORB 1.2.1
Parallel Desktop = Windows 10 & MacOS : AOO, Libreoffice.
Parallel Desktop = Windows 10 & MacOS : AOO, Libreoffice.
-
- ManitOOu
- Messages : 3028
- Inscription : 30 avr. 2011 23:08
- Localisation : Casablanca (Maroc)
Re: [Writer] Exporter certaines pages d'un document
Bonjour,
), qui se chargerait de remettre en place les pages concernées ?
Ne serait-ce pas l'occasion d'utiliser un document-maître (sans macrosVirgule a écrit :'exporter que certaines pages d'un document writer au même format car elles seront retravaillées de façons indivuduelles

À bientôt
LibO 4.1.5.3 et AOO 4.0.1 sous Windows 7, MRI et SDK pour les macros.
Et la sauvegarde incrémentée, c'est sympa !
LibO 4.1.5.3 et AOO 4.0.1 sous Windows 7, MRI et SDK pour les macros.
Et la sauvegarde incrémentée, c'est sympa !
-
- Membre hOOnoraire
- Messages : 129
- Inscription : 15 déc. 2010 13:17
Re: [Writer] Exporter certaines pages d'un document
Bonsoir,
Effectivement cela marche très bien pour un export en pdf mais mon but est d'arriver à la même chose pour n'exporter ou sauvegarder que certaines pages au format .odt
merci de votre aide
Effectivement cela marche très bien pour un export en pdf mais mon but est d'arriver à la même chose pour n'exporter ou sauvegarder que certaines pages au format .odt
Le document principal comporte quatre pages qui doivent être absolument séparé en 3 et dispatché après corrections éventuelles.alhazred a écrit :Bonjour,
Ne serait-ce pas l'occasion d'utiliser un document-maître (sans macrosVirgule a écrit :'exporter que certaines pages d'un document writer au même format car elles seront retravaillées de façons indivuduelles), qui se chargerait de remettre en place les pages concernées ?
merci de votre aide
LibreOffice Version: 4.1.6.2.0 et Windows 7 pro
-
- ManitOOu
- Messages : 3028
- Inscription : 30 avr. 2011 23:08
- Localisation : Casablanca (Maroc)
Re: [Writer] Exporter certaines pages d'un document
Donc, justement, créer trois fichiers (copier-coller de parties du texte existant) qui peuvent être modifiés séparément l'un de l'autre
+ un fichier principal qui contient la page invariable (d'accord, j'interprète à ma manière le non-sens de "quatre pages qui doivent être absolument séparé en 3") et des sections liées aux trois autres fichiers, ce qui revient à peu près au même qu'un document-maître.
+ un fichier principal qui contient la page invariable (d'accord, j'interprète à ma manière le non-sens de "quatre pages qui doivent être absolument séparé en 3") et des sections liées aux trois autres fichiers, ce qui revient à peu près au même qu'un document-maître.
Ajout : Est-ce qu'une macro est nécessaire pour ça ? Dans ce cas, montre le genre de texte qui nécessite ce traitement : je ne vois pas ce que ton tableau de deux lignes a à faire dans ce sujet |
À bientôt
LibO 4.1.5.3 et AOO 4.0.1 sous Windows 7, MRI et SDK pour les macros.
Et la sauvegarde incrémentée, c'est sympa !
LibO 4.1.5.3 et AOO 4.0.1 sous Windows 7, MRI et SDK pour les macros.
Et la sauvegarde incrémentée, c'est sympa !
-
- Membre hOOnoraire
- Messages : 129
- Inscription : 15 déc. 2010 13:17
Re: [Writer] Exporter certaines pages d'un document
Bonjour,
Désolé je me suis peut-être mal expliqué dès le début.
Mon document de départ qui fait 4 pages est un modèle.ott qui peut être considéré comme un formulaire (avec images et tableau).
Une fois les différentes parties remplies les pages entières doivent être dispatchées (par le réseau) en 3 documents chacun nommés suivant le texte d'une case d'un tableau (1 page+1page+2pages). Ce qui se fait sans problème avec la macro que DLE à modifié.
Le tableau de 2 lignes sert uniquement à avoir un repère pour nommer les documents exportés/sauvegardés.
Bon début de journée
Désolé je me suis peut-être mal expliqué dès le début.
Mon document de départ qui fait 4 pages est un modèle.ott qui peut être considéré comme un formulaire (avec images et tableau).
Une fois les différentes parties remplies les pages entières doivent être dispatchées (par le réseau) en 3 documents chacun nommés suivant le texte d'une case d'un tableau (1 page+1page+2pages). Ce qui se fait sans problème avec la macro que DLE à modifié.
Le tableau de 2 lignes sert uniquement à avoir un repère pour nommer les documents exportés/sauvegardés.
Bon début de journée
LibreOffice Version: 4.1.6.2.0 et Windows 7 pro
-
- GourOOu
- Messages : 5622
- Inscription : 25 nov. 2011 18:07
- Localisation : Guyane
Re: [Writer] Exporter certaines pages d'un document
Bonjour
Une macro à tester avec ton document et éventuellement à adapter.
Elle devrait recopier la Page 1.
Renseigne le dernier adresseDoc avant l'exécution.
A+
Une macro à tester avec ton document et éventuellement à adapter.
Code : Tout sélectionner
Sub test
Dim oDoc as Object, oTables as Object, oTable as Object, maCellule as Object
Dim nomFichier as String, adresseDoc as String
Dim curseurVisible as Object, oRangeFinPage as Object, aCopier as Object
oDoc = ThisComponent
oTables = oDoc.getTextTables()
oTable = oTables.getByName("TAB1")
maCellule = oTable.getCellByName("A1")
nomFichier = maCellule.String
curseurVisible = oDoc.CurrentController.ViewCursor
With curseurVisible
.jumpToPage(1)
.jumpToEndOfPage
oRangeFinPage = .end
.jumpToStartOfPage
.gotoRange(oRangeFinPage, true)
End With
adresseDoc = "private:factory/swriter"
aCopier = ThisComponent.CurrentController.getTransferable()
oDoc = StarDesktop.loadComponentFromURL(adresseDoc, "_blank", 0, Array() )
curseurVisible = oDoc.currentController.viewCursor
oDoc.CurrentController.Select(curseurVisible)
oDoc.CurrentController.insertTransferable(aCopier)
adresseDoc = convertToURL("Chemin de la copie/") & nomFichier & ".odt"
oDoc.storeAsURL(adresseDoc, Array() )
oDoc.Close(True)
End Sub
Renseigne le dernier adresseDoc avant l'exécution.
A+
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Libre Office Version: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
-
- Membre hOOnoraire
- Messages : 129
- Inscription : 15 déc. 2010 13:17
Re: [Writer] Exporter certaines pages d'un document
Bonjour
et merci à toi, cela marche impec.
Un seule petite chose, dans mon document l'export de fait ainsi :
Page 1 = ça marche
Page 2 = ça marche
Pages 3+4 = comment puis-je faire ?
merci encore
et merci à toi, cela marche impec.
Un seule petite chose, dans mon document l'export de fait ainsi :
Page 1 = ça marche
Page 2 = ça marche
Pages 3+4 = comment puis-je faire ?
merci encore
LibreOffice Version: 4.1.6.2.0 et Windows 7 pro
-
- GourOOu
- Messages : 5622
- Inscription : 25 nov. 2011 18:07
- Localisation : Guyane
Re: [Writer] Exporter certaines pages d'un document
Re
Une façon de faire, il y en a d'autesN'oublie pas de changer la référence à la cellule pour le nom du fichier.
A+
Comme les deux pages se suivent, pas trop besoin de jongler avec le curseurVirgule a écrit :Pages 3+4 = comment puis-je faire ?

Une façon de faire, il y en a d'autes
Code : Tout sélectionner
Sub test
Dim oDoc as Object, oTables as Object, oTable as Object, maCellule as Object
Dim nomFichier as String, adresseDoc as String
Dim curseurVisible as Object, oRangeFinPage as Object, aCopier as Object
Dim mesPages as Variant, intX as Integer
oDoc = ThisComponent
oTables = oDoc.getTextTables()
oTable = oTables.getByName("TAB1")
maCellule = oTable.getCellByName("A1")
nomFichier = maCellule.String
curseurVisible = oDoc.CurrentController.ViewCursor
mesPages = Array(3,4)
For intX = 0 to UBound(mesPages)
With curseurVisible
.jumpToPage(mesPages(intX))
.jumpToEndOfPage
oRangeFinPage = .end
.jumpToStartOfPage
.gotoRange(oRangeFinPage, true)
End With
Next
adresseDoc = "private:factory/swriter"
aCopier = ThisComponent.CurrentController.getTransferable()
oDoc = StarDesktop.loadComponentFromURL(adresseDoc, "_blank", 0, Array() )
curseurVisible = oDoc.currentController.viewCursor
oDoc.CurrentController.Select(curseurVisible)
oDoc.CurrentController.insertTransferable(aCopier)
adresseDoc = convertToURL("Chemin de la copie/") & nomFichier & ".odt"
oDoc.storeAsURL(adresseDoc, Array() )
oDoc.Close(True)
End Sub
A+
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Libre Office Version: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
-
- Membre hOOnoraire
- Messages : 129
- Inscription : 15 déc. 2010 13:17
Re: [Writer] Exporter certaines pages d'un document
Merci à toi,
Je marque le sujet en résolu
Joyeux noel
Je marque le sujet en résolu
Joyeux noel
LibreOffice Version: 4.1.6.2.0 et Windows 7 pro
-
- Membre OOrganisé
- Messages : 53
- Inscription : 09 mai 2014 00:53
Re: [Résolu][Writer] Exporter certaines pages d'un document
Bonsoir,
j'ai essayé d'utiliser la macro avec une page dans laquelle les objets sont insérés dans un cadre et cela ne fonctionne pas.
Merci
j'ai essayé d'utiliser la macro avec une page dans laquelle les objets sont insérés dans un cadre et cela ne fonctionne pas.
Merci
ooo4.1 + windows Vista
-
- MOOdérateur
- Messages : 182
- Inscription : 22 févr. 2016 23:49
Re: [Résolu][Writer] Exporter certaines pages d'un document
Bonjour et bienvenue,
Nous nous devons de verrouiller ce fil de discussion. Nous vous rappelons les règles de ce forum et notamment la n° 12 :
Nous nous devons de verrouiller ce fil de discussion. Nous vous rappelons les règles de ce forum et notamment la n° 12 :
Merci de votre collaboration.Ne postez pas à la suite d'un fil de discussion datant de plus d'un mois même si celui-ci n'est pas marqué [Résolu]. Vous ne faites que déterrer de vieux problèmes sur d'anciennes versions d'OOo qui n'ont plus cours.