Sub Result_Final()
Dim NbInvit As Integer
Dim Logo As Shape
' récupération du nbre invitations saisies
NbInvit = Feuil1.Range("B25")
' Suppression de tous les shapes dans la "Feuil3"
For Each shp In Feuil3.Shapes
shp.Delete
Next shp
' Remise à zéro de la "Feuil3"
Feuil3.Columns("A:G").Clear
' Génération des invitations dans la feuille ("Feuil3") à partir du modèle ("Feuil2")
Feuil2.Range("A1:G18").Copy Feuil3.Range("A1").Resize(18 * NbInvit)
Feuil3.Columns("G").Cells.HorizontalAlignment = xlLeft
' Copie du logo dans chaque document généré
Set Logo = Feuil2.Shapes("Logo")
For Invit = 1 To NbInvit - 1
Logo.Copy
Feuil3.Paste Feuil3.Cells((18 * Invit) + 1, 1)
Application.CutCopyMode = False
Next Invit
' Incrémentation du numéro d'invitation toutes les 18 lignes
For Invit = 1 To NbInvit
Feuil3.Cells(18 * Invit - 16, 7).NumberFormat = "00"
Feuil3.Cells(18 * Invit - 16, 7) = Invit
Next Invit
' Modification des params d'impression en mettant à ZERO (TopMargin, BottomMargin, HeaderMargin, FooterMargin)
With Worksheets("Feuil3").PageSetup
.LeftMargin = Application.CentimetersToPoints(0.7)
.RightMargin = Application.CentimetersToPoints(0.7)
.TopMargin = Application.CentimetersToPoints(0)
.BottomMargin = Application.CentimetersToPoints(0)
.HeaderMargin = Application.CentimetersToPoints(0)
.FooterMargin = Application.CentimetersToPoints(0)
.Orientation = xlPortrait
.PaperSize = xlPaperA4
End With
End Sub