Enregistrement individuel après publipostage
joanie1234
Messages postés
1
Date d'inscription
Statut
Membre
Dernière intervention
-
joanie1234 -
joanie1234 -
J'ai un formulaire de 2 pages auquel j'ai fait un publipostage.
J'aimerais l'enregistrer en Word de façon individuel, mais j'ai vraiment un problème avec le code (et je suis plus ou moins doué dans ce domaine)
1- La mise en page ne suit pas
2- Comment enregistrer le document avec un mot présent dans le doc en question ?
Sub BreakOnPage()
Application.Browser.Target = wdBrowsePage
For i = 1 To ActiveDocument.BuiltInDocumentProperties("Number of Pages")
ActiveDocument.Bookmarks("\page").Range.Copy
Documents.Add
Selection.PasteAndFormat (wdFormatOriginalFormatting)
Selection.PageSetup.Orientation = wdOrientLandscape
Selection.TypeBackspace
ChangeFileOpenDirectory "P:\ÉVÉNEMENTS SIGNATURES\2. Mois de la jonquille\Jonquilles 2018\4. Points de vente\Formulaire\Nouveau dossier\"
DocNum = DocNum + 1
ActiveDocument.SaveAs FileName:="Formulaire jonquille_" & DocNum & ".docx"
ActiveDocument.Close
Application.Browser.Next
Next i
ActiveDocument.Close savechanges:=wdDoNotSaveChanges
End Sub
Merci tellement! :)
J'aimerais l'enregistrer en Word de façon individuel, mais j'ai vraiment un problème avec le code (et je suis plus ou moins doué dans ce domaine)
1- La mise en page ne suit pas
2- Comment enregistrer le document avec un mot présent dans le doc en question ?
Sub BreakOnPage()
Application.Browser.Target = wdBrowsePage
For i = 1 To ActiveDocument.BuiltInDocumentProperties("Number of Pages")
ActiveDocument.Bookmarks("\page").Range.Copy
Documents.Add
Selection.PasteAndFormat (wdFormatOriginalFormatting)
Selection.PageSetup.Orientation = wdOrientLandscape
Selection.TypeBackspace
ChangeFileOpenDirectory "P:\ÉVÉNEMENTS SIGNATURES\2. Mois de la jonquille\Jonquilles 2018\4. Points de vente\Formulaire\Nouveau dossier\"
DocNum = DocNum + 1
ActiveDocument.SaveAs FileName:="Formulaire jonquille_" & DocNum & ".docx"
ActiveDocument.Close
Application.Browser.Next
Next i
ActiveDocument.Close savechanges:=wdDoNotSaveChanges
End Sub
Merci tellement! :)
A voir également:
- Enregistrer un publipostage en word en séparant chaque feuille
- Publipostage word créer plusieurs documents - Meilleures réponses
- Publipostage enregistrement individuel word - Meilleures réponses
- Word 2013 - Télécharger - Traitement de texte
- Audacity enregistrer son pc - Guide
- Publipostage mail - Accueil - Word
- Tableau word - Guide
- Espace insécable word - Guide
4 réponses
Bonjour,
C'est normal que la mise en forme (et la mise en page) ne suit pas car la macro crée un nouveau document basique, et donc basé sur le Normal.dotm.
Donc, il faut indiquer le modèle que tu veux utiliser.
A la ligne Documents.Add, tu dois préciser le nom du modèle. Et puisque tu pars d'un document déjà fait et donc basé sur un modèle, tu peux récupérer le nom de ce modèle et l'utiliser pour créer chaque nouveau document.
A mettre en début de macro :
et à remplacer dans la boucle :
m@rina
C'est normal que la mise en forme (et la mise en page) ne suit pas car la macro crée un nouveau document basique, et donc basé sur le Normal.dotm.
Donc, il faut indiquer le modèle que tu veux utiliser.
A la ligne Documents.Add, tu dois préciser le nom du modèle. Et puisque tu pars d'un document déjà fait et donc basé sur un modèle, tu peux récupérer le nom de ce modèle et l'utiliser pour créer chaque nouveau document.
A mettre en début de macro :
Dim mon_modele As String
mon_modele = ActiveDocument.AttachedTemplate.FullName
et à remplacer dans la boucle :
Documents.Add Template:=mon_modele
m@rina