Imprimer des feuilles excel générées à partir d'une liste de données

cs_aminix9 Messages postés 96 Date d'inscription mercredi 2 juin 2004 Statut Membre Dernière intervention 9 février 2010 - 5 févr. 2010 à 23:12
cs_aminix9 Messages postés 96 Date d'inscription mercredi 2 juin 2004 Statut Membre Dernière intervention 9 février 2010 - 9 févr. 2010 à 01:24
bonjour
j'ai un bulletin de notes dans une feuille excel, dans ce bulletin j'ai liste de données qui contient des noms qui proviennent d'une colonne, à chaque fois que je choisi un nom, le bulletin change en affichant les notes de l'éléve choisi.
ce que je veux faire c'est imprimer tous les bulletins d'une manière automatique sans cliquer sur chaque nom et ensuite imprimer pour chaque bulletin.
est ce que je dois utiliser un bouton avec une macro vba? et que dois je y mettre dedans?
merci

4 réponses

c148270 Messages postés 303 Date d'inscription mercredi 12 janvier 2005 Statut Membre Dernière intervention 3 octobre 2013 1
6 févr. 2010 à 01:30
Bonjour

Effectivement un bouton déclanchant une macro est simple.
Voici quoi mettre dans le macro :

ActiveWorkbook.PrintOut Copies:=1, Collate:=True

Bonne journée
0
cs_aminix9 Messages postés 96 Date d'inscription mercredi 2 juin 2004 Statut Membre Dernière intervention 9 février 2010
6 févr. 2010 à 12:54
rebonjour c148270
d'abord merci d'avoir répondu,
j'ai créé un bouton avec le code que tu m'as donné , mais il a lancé l'impression de toutes les feuilles du classeur !!
malheureusement ce n'est pas ce que je veux :(
comme j'ai expliqué, j'ai deux feuilles dans mon classeur, la première contient un tableau de noms avec les matières et les notes correspondantes.
dans la deuxième feuille j'ai un modèle de bulletin qui est généré pour chaque éléve en choisissant son nom dans une liste de données sur la meme feuille (liste de choix) alimentée par la colonne des noms dans la première feuille.
donc pour imprimer tout ces bulletins de la deuxième feuille, il faut à chaque fois que je choisisse le nom de l'éléve et faire imprimer !!
donc il faut une boucle qui va faire le tour de tout les éléments de la liste (noms d'éléves) et imprimera tous les bulletins.
merci de votre aide
0
c148270 Messages postés 303 Date d'inscription mercredi 12 janvier 2005 Statut Membre Dernière intervention 3 octobre 2013 1
8 févr. 2010 à 11:25
Bonjour
Je n'ai pas tout bien compris.

Il me semble que le clique sur un nom soit associé à une macro qui génère une feuille avec les notes.
Dans ce cas à la fin de la génération soit la feuille est active dans ce cas il suffit de rajouter
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True

soit il faut la selectionner
sheets("nom de la feuille générée").select
et l'inpmrimer
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True

s'il s'agit de supprimer le clique sur le nom pour générer et imprimer les bulletins de tous le noms de la feuille les contenant la boucle peut être :
sheets("nom de la feuille des noms").select
nombredelignesnoms=sheets("nom de la feuille des noms").range "a65536").end(xlup).row (remplacer a par la colonne des noms)

for i = 1 to nombredelignesnoms
(générer ma feuille de note)
sheets("nom de la feuille générée").select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
next i

Bonne journée
0
cs_aminix9 Messages postés 96 Date d'inscription mercredi 2 juin 2004 Statut Membre Dernière intervention 9 février 2010
9 févr. 2010 à 01:24
je vais essayer d'utiliser la boucle que t'as mis et je te tiendrai au courant
merci
0