user_mobilelogo

Voir

les 50 derniers articles

  

 

Qui suis-je ?


Voici une macro qui va sauvegarder chaque section d'un document en un fichier indépendant. Cette macro est utile en particulier pour des fichiers issus du publipostage.

Votre document principal de publipostage est normalement basé sur un modèle avec en-tête, pied de page, etc. Si ce n'est pas le cas et que vous ayez ajouté manuellement ce type d'éléments, la macro va fonctionner mais vous obtiendrez un document avec une mise en forme et une msie en page qui ne va pas refléter votre document fusionné.

Dans ce dernier cas, créez un modèle à partir de votre document principal de publipage : vous pouvez simplement l'enregistrer sous un format DOTX, puis vous supprimerez le contenu, mais vous garderez tout ce qui est en-tête, pied de page, etc. Surtout pensez à le convertir en "document normal" pour qu'il ne soit pas lié à une base de données pour le publipostage. Ainsi vos documents créés depuis votre document fusionné seront basés sur ce modèle.

Les documents seront automatiquement enregistrées sous un numéro (DocNum). Si vous souhaitez que les noms des documents reprennent des mots contenu dans le résultat, voyez cet article.

 

Sub Couper_sections()
'macro écrite par m@rina
Application.ScreenUpdating = False
Dim SousDoc As Document
Dim chemin As String
Dim R As Range
Dim x, DocNum

For x = 1 To ActiveDocument.Sections.Count - 1
Set R = ActiveDocument.Sections(x).Range:   R.End = R.End - 1
R.Copy
'Mettez le chemin complet et le nom du modèle
Documents.Add Template:="C:\Users\mon_nom\Documents\Modèles Office personnalisés\publitest.dotx"
Selection.Paste
DocNum = DocNum + 1
'Mettez ici le nom complet du dossier où vous souhaitez récupérer les documents
chemin = "C:\Mes documents\test\"
With ActiveDocument
.SaveAs FileName:=chemin & DocNum & ".docx"
.Close
End With
Next x

Set SousDoc = Nothing
Set R = Nothing
Application.ScreenUpdating = True

End Sub

 

Statistiques

Aujourd'hui1509
Hier1781
Cette semaine6854
Ce mois42453
Total depuis 200418152245

18
visiteurs actuellement en ligne

28 mars 2024