Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 Creer pdf selon condition

yannlion

XLDnaute Junior
Bonjour le forum,

Je tente depuis plusieurs jours de rédiger une macro pour créer plus de 300 fichiers pdf ...
Pour le moment j'ai juste réussi à sauvegarder les pages 1 à 1 ...

Je vous joins un extrait du fichier avec les données.
L'objectif :
- enregistrer un pdf nommé SYNTHESE_DPT_XXXXX (XXXXX correspond aux cinq numéros situés en colonne A),
- chaque pdf commencera à la ligne "Compétition départementale XXXXX ..." jusqu'à la dernière ligne de l'encadré gris juste avant la nouvelle ligne ""Compétition départementale XXXXX ...",
- le petit bonus compliqué : si possible ne pas couper l'encadré gris, il doit être si possible sur une même page

Merci d'avance pour votre aide
Yann
 

Pièces jointes

  • XLDWL.xlsx
    17.2 KB · Affichages: 3
Dernière édition:

job75

XLDnaute Barbatruc
Bonsoir yannlion, le forum,

Voyez le fichier joint et cette macro affectée au bouton :
VB:
Sub PDF()
Dim chemin$, c As Range, cc As Range
chemin = ThisWorkbook.Path & "\PDF\"
If Dir(chemin, vbDirectory) = "" Then MkDir chemin 'crée le sous-dossier
For Each c In ActiveSheet.UsedRange.Columns(1).Cells
    If LCase(c) Like "compétition*" Then
        Set cc = Cells.Find("Signature", c, xlValues, xlWhole, xlByRows)
        With ActiveSheet.PageSetup
            .PrintArea = Range(c, cc(3, 8)).Address
            .Zoom = False
            .FitToPagesWide = 1
            .FitToPagesTall = 1
        End With
        ActiveSheet.ExportAsFixedFormat xlTypePDF, chemin & "SYNTHESE_DPT_" & Left(c(5), 5)
    End If
Next
End Sub
A+
 

Pièces jointes

  • XLDWL.xlsm
    27.2 KB · Affichages: 4
Dernière édition:
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…