Uniquement pour Word
Avec une macro !
N'oubliez pas qu'avec PowerPoint, vous avez une fonctionnalité toute prête, faite pour cela, qui se nomme "Album photos".
On estime ici que toutes les images ont une extension "jpg". Si ce n'est pas le cas, changez l'extension dans le code. En tous les cas, toutes les images doivent avoir la même extensions
Créez un nouveau document, puis lancez la macro ci-dessous . Cette macro insère toutes les images à la marge, sans habillage, ce qui est préférable dans ce cas.
Sub InsererImagesQurChaquePage()
Dim dossier As String
Dim fichier As String
Dim doc As Document
Dim largeurImageCm As Single
Dim largeurImagePt As Single
Dim shape As InlineShape
' Modifier le chemin du dossier ici
dossier = "c:\dossier_images\" ' Assurez-vous que le chemin se termine par un antislash (\)
' Largeur fixe en centimètres (par exemple 10 cm)
largeurImageCm = 10
' Conversion de cm en points (1 cm ˜ 28.35 points)
largeurImagePt = largeurImageCm * 28.35
' Référence à votre document actuel
Set doc = ActiveDocument
' Trouver le premier fichier image
fichier = Dir(dossier & "*.jpg") ' Changez l'extension si nécessaire
Do While fichier <> ""
' Insérer l'image
Set shape = doc.InlineShapes.AddPicture(FileName:=dossier & fichier, _
LinkToFile:=False, SaveWithDocument:=True)
' Ajouter un saut de page après l'image
shape.Range.InsertAfter Chr(12) ' Chr(12) est un saut de page
' Trouver le fichier suivant
fichier = Dir()
Loop
End Sub
Si vous souhaitez que chaque image ait la même taille, utilisez la macro suivante. Attention, on ne peut parler que de largeur (ou de hauteur) afin de ne pas déformer les images si elles n'ont pas les mêmes proportions.
Dim dossier As String
Dim fichier As String
Dim doc As Document
Dim largeurImageCm As Single
Dim largeurImagePt As Single
Dim shape As InlineShape
' Modifier le chemin du dossier ici
dossier = "C:\Dossier images\" ' Assurez-vous que le chemin se termine par un antislash (\)
' Largeur fixe en centimètres (par exemple 10 cm)
largeurImageCm = 10
' Conversion de cm en points (1 cm ˜ 28.35 points)
largeurImagePt = largeurImageCm * 28.35
' Référence à votre document actuel
Set doc = ActiveDocument
' Trouver le premier fichier image
fichier = Dir(dossier & "*.jpg") ' Changez l'extension si nécessaire
Do While fichier <> ""
' Insérer l'image
Set shape = doc.InlineShapes.AddPicture(FileName:=dossier & fichier, _
LinkToFile:=False, SaveWithDocument:=True)
' Modifier la largeur sans changer le ratio hauteur/largeur
With shape
.LockAspectRatio = msoTrue
.Width = largeurImagePt
End With
' Ajouter un saut de page après l'image
shape.Range.InsertAfter Chr(12) ' Chr(12) est un saut de page
' Trouver le fichier suivant
fichier = Dir()
Loop
End Sub