frederic1994
XLDnaute Nouveau
Bonjour et bonne année,
Ma mère travaille dans une école et tous les mois elle imprime en PDF (avant de les imprimer à l'école) les listes des élèves qui vont à l'étude et/ou à la garderie. Pour ce faire elle a quatre classeurs excel avec un certain nombre de pages, pour un total d'un peu plus de vingt feuilles réparties sur les quatre classeurs. Sur toutes ces feuilles, il n'y a que la liste des classes qui change.
J'avais dans l'idée de créée un classeur avec une feuille type, et une (ou plusieurs) feuille(s) avec toutes les listes, une par colonne. J'ai commencer par faire une boucle pour remplir ma feuille type sur une liste, jusque-là ça fonctionne, pour deux la deuxième ne se fait pas. Ci-dessous le code.
Dans un deuxième temps, j'ai trouvé un code pour imprimer en PDF (avec PDF créator), j'ai essayer de l'adapter, mais n'y connaissant pas grand chose dans la "vrai" programmation en VBA, je n'y parviens pas à le faire fonctionner.
L'objectif est d'imprimer toutes les feuilles en un seul PDF, ce qui nécessite de garder en mémoire toutes les feuilles. S'il y avait une possibilité de changer l'en tête de page ce serait un plus.
Vous trouverez ci-joint le fichier excel.
En espérant avoir été clair, je vous remercie d'avance de l'attention que vous porterez à mon problème.
Ma mère travaille dans une école et tous les mois elle imprime en PDF (avant de les imprimer à l'école) les listes des élèves qui vont à l'étude et/ou à la garderie. Pour ce faire elle a quatre classeurs excel avec un certain nombre de pages, pour un total d'un peu plus de vingt feuilles réparties sur les quatre classeurs. Sur toutes ces feuilles, il n'y a que la liste des classes qui change.
J'avais dans l'idée de créée un classeur avec une feuille type, et une (ou plusieurs) feuille(s) avec toutes les listes, une par colonne. J'ai commencer par faire une boucle pour remplir ma feuille type sur une liste, jusque-là ça fonctionne, pour deux la deuxième ne se fait pas. Ci-dessous le code.
Code:
Dim i As Integer
For k = 1 To 2 'k = Numéro du colonne indicatif de la liste
For i = 4 To 41 'i = Numéro de ligne indicatif du nom de l'élève
Sheets("Liste").Range("A" & i) = Sheets("Etude 1").Cells(i - 2, k).Value
Next i
toPDF 'Imprimer en PDF (ne fonctionne pas)
Next k
Dans un deuxième temps, j'ai trouvé un code pour imprimer en PDF (avec PDF créator), j'ai essayer de l'adapter, mais n'y connaissant pas grand chose dans la "vrai" programmation en VBA, je n'y parviens pas à le faire fonctionner.
L'objectif est d'imprimer toutes les feuilles en un seul PDF, ce qui nécessite de garder en mémoire toutes les feuilles. S'il y avait une possibilité de changer l'en tête de page ce serait un plus.
Vous trouverez ci-joint le fichier excel.
En espérant avoir été clair, je vous remercie d'avance de l'attention que vous porterez à mon problème.