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.
Dans un deuxième onglet, j'ai un menu déroulant (Cellule en jaune) qui me permet de sélectionner un nom.
Cela me permet d'alimenter deux formulaires (imprim écran partiels de ces formulaires ci-dessous). Il y a un formulaire par onglet.
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
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