user_mobilelogo

Voir

les 50 derniers articles

  

 

Qui suis-je ?


 

Supposons que la chaîne en question est "xyz"

Cette macro insère un saut de section entre chaque fichier inséré pour especter éventuellement des présentations différentes (marges, entêtes, etc.). Si tout est pareil, avec un pied de page identique, on pourra y mettre plutôt un saut de page.

 

Sub concaten()
'macro écrite par m@rina
Documents.Add
ChDir "c:\mon chemin préféré"
myName = Dir("*xyz*.*")
While myName <> ""
With Selection
.InsertFile FileName:=myName, ConfirmConversions:=False
.InsertParagraphAfter
.InsertBreak Type:=wdSectionBreakNextPage
.Collapse Direction:=wdCollapseEnd
End With
myName = Dir()
Wend
End Sub

 

Par ailleurs, depuis la version 2002, il existe en VBA un FilePicker qui permet une multi-sélection de fichiers selon les modalités habituelles de l'explorateur.

Ainsi la macro ci-dessus peut également s'écrire comme ci-dessous. L'avantage du FilePicker : on peut picorer les fichiers en introduisant le masque *xyz*.docx dans la boîte de dialogue, utiliser Ctrl-A pour tout sélectionner, les touches Maj ou Ctrl , trier les fichiers etc...

 

Sub ConcatenerFichiers()
Dim fd As FileDialog
Set fd = Application.FileDialog(msoFileDialogFilePicker)
fd.Title = "Sélectionner les fichiers à concaténer"
If fd.Show = -1 Then
For Each vFichier In fd.SelectedItems
With ActiveDocument.Content
.Collapse Direction:=wdCollapseEnd
.InsertBreak Type:=wdPageBreak
.InsertFile FileName:=vFichier
End With
Next vFichier
End If
End Sub

 

 

 

Statistiques

Aujourd'hui690
Hier1893
Cette semaine7759
Ce mois27052
Total depuis 200418229592

19
visiteurs actuellement en ligne

19 avril 2024