Enregistrer en pdf formulaire complété ligne par ligne

Bonjour à toutes et à tous,

J'ai plusieurs données dans un tableur. J'ai simplifié au maximum, mais en vrai je peux avoir jusqu'à 1000 lignes et plus de 30 colonnes.

Dans cet exemple, j'ai NOM, PRENOM, ADRESSE, CODE POSTAL, VILLE, ADRESSE COMPLETE.

25xv

Dans un deuxième onglet, j'ai un menu déroulant (Cellule en jaune) qui me permet de sélectionner un nom.

q6e1

Cela me permet d'alimenter deux formulaires (imprim écran partiels de ces formulaires ci-dessous). Il y a un formulaire par onglet.

xegj k636

J'aimerais que, pour chaque ligne de mon premier tableur, générer au format pdf les deux formulaires qui prendraient respectivement les noms "NOM demande de subvention" et "NOM engagements complémentaires".

Comme je peux avoir jusqu'à parfois 500 personnes éligibles, ça me fait faire la manipulation 500 fois.

Est-ce qu'une macro pourrait me permettre d'automatiser cela ?

Et en bonus, j'aimerais que ça ne prenne que les personnes éligibles (qui sont en "Modeste" ou "Très modeste").

Voici mon fichier Excel (comme il est trop volumineux, j'ai supprimé des pages du formulaires qui sont des images et qui prennent du poids, mais l'idée reste la même).

Je sais que je pourrais passer par un publipostage sous Word, mais ça rame énormément quand je publipostie (et ça ferait quand même faire beaucoup de manipulations in fine).

Je remercie grandement celles et ceux qui sauront m'aider (ça me ferait gagner énormément de temps, mais je ne sais pas comment mettre mon idée sous forme de macro ).

21coprotest.xlsx (970.91 Ko)

Bonjour à toutes et à tous,

J'ai trouvé comment faire en sorte que ça enregistre sous le nom de la cellule, mais ça ne prend pas tous les caractères en compte. Par exemple, pour MICHU1, le formulaire de demande de subvention s'enregistre sous le nom "MICHU1 dem" et pas "MICHU1 demande de subvention". Je ne sais pas comment faire en sorte que ça change.

Voici la macro :

Sub subdds()

Sheets(Array("demande de subvention")).Select

    ActiveSheet.ExportAsFixedFormat _
            Type:=xlTypePDF, _
            Filename:=Left(Sheets("Sélection propriétaire").Range("J9"), InStr(1, ThisWorkbook.Name, ".")), _
            Quality:=xlQualityStandard, _
            IncludeDocProperties:=True, _
            IgnorePrintAreas:=False, _
            OpenAfterPublish:=True

End Sub
Sub subec()

Sheets(Array("engagements complémentaires")).Select

    ActiveSheet.ExportAsFixedFormat _
            Type:=xlTypePDF, _
            Filename:=Left(Sheets("Sélection propriétaire").Range("K9"), InStr(1, ThisWorkbook.Name, ".")), _
            Quality:=xlQualityStandard, _
            IncludeDocProperties:=True, _
            IgnorePrintAreas:=False, _
            OpenAfterPublish:=True

End Sub

J'ai essayé de trouver sur le net une macro qui permettrait de faire en sorte que ça sélectionne un par un les items du menu déroulant (afin que l'enregistrement se fasse pour toutes les lignes), mais je n'ai rien trouvé .

J'ai viré le menu déroulant. L'idée serait d'avoir une traduction en macro de :

Pour Sélection propriétaireD9 allant de la valeur TableurgénéralA2 jusqu'à la valeur TableurgénéralA(dernière ligne non vide), appliquer les macros ci-dessus.

Mais je ne sais pas comment traduire ça sous forme de macro

Rechercher des sujets similaires à "enregistrer pdf formulaire complete ligne"