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

XL 2016 Imprimer des feuilles de comptage avec numéro différent

Gayou

XLDnaute Nouveau
Bonjour à tous,

Je suis entrain de préparer l'inventaire de ma boîte et je dois imprimer des feuilles de comptage: 500 feuille de comptage avec un numéro différent et un en-tête qui change en fonction du numéro de la feuille. J'aimerais bien ne pas avoir à le faire manuellement.
Pouvez vous m'aider svp?

NB: il existe surement une macro pour cela mais les macros n'ont jamais été mon fort. Je ne les utilise jamais. Merci

Je vous joint le fichier
 

xUpsilon

XLDnaute Accro
Bonjour,

Une piste : si tous tes classeurs sont nommés de la même manière avec simplement un nombre qui change à la fin, tu peux faire une boucle qui ouvre tous les fichiers stockés dans un dossier et les imprime tous. (Utiliser la méthode FollowHyperLink par ex).
Si ce sont des feuilles sur un même classeur, même principe, on peut boucler sur les feuilles (Worksheets(1) correspond par ex à la première feuille de calcul de ton classeur, dans l'ordre d'affichage en bas à gauche, donc avec un i qui va de 1 à 500 tu peux lancer l'impression de toutes les Worksheets(i)).
Pour imprimer, voir du côté des fonctions PrintPreview (aperçu avant impression), PrintOut (impression directe, ne pas oublier de gérer les paramètres, si tu veux adapter la taille de la feuille à une page A4 par ex).

Bonne continuation
 

Gayou

XLDnaute Nouveau
non justement ce ne sont pas des classeurs mais cette même feuille que je dois imprimer en 500 exemplaire avec un numéro différent à chaque fois et le nom du magasin qui change en fonction du numéro de la feuille.
Je ne sais pas si je me fais comprendre
 

xUpsilon

XLDnaute Accro
Est ce que le nom du magasin se met à jour automatiquement selon le numéro ? A ce moment là il suffit d'incrémenter 1 par 1 le numéro, et d'imprimer la feuille pour chaque incrémentation. Est ce cela que tu souhaites ?

Bonne continuation
 

Gayou

XLDnaute Nouveau
oui il se met à jour automatiquement selon le numéro.
Je suppose que oui pour ta deuxième question du moment où je ne dois pas changer manuellement le numéro et ensuite cliquer sur imprimer à chaque fois
 

xUpsilon

XLDnaute Accro
La macro changerait elle même le numéro, c'est pour ça qu'il est important pour moi de savoir si le nom associé change automatiquement en fonction du nombre haha.
Le principe serait tout simple :
- une boucle pour i = 1 to 500
- changer le numéro de la feuille en fonction de i (donc le nom du magasin se met à jour)
- imprimer la feuille
- fin de boucle

Bonne continuation
 

xUpsilon

XLDnaute Accro
J'essaye juste de t'expliquer comment je pense faire les choses, pour que tu me dises si ça correspond à ce que tu veux faire, mais comme tu ne comprends pas la logique algorithmique visiblement, ça complique un petit peu les choses haha.

En gros, ma macro fera ça :
Départ : Numéro de la feuille est n'importe lequel, Nom de l'entreprise pareil
Exécution de la macro :
- la boucle s'exécute pour la première itération : i = 1
- dans la case du numéro de feuille, le chiffre change (par macro) et devient 1
- en conséquence, la case de nom de l'entreprise remarque que le numéro est 1 et prend ainsi le nom de l'entreprise associé au numéro 1
- la feuille est donc prête à être imprimée : j'exécute via ma macro la commande d'impression de la feuille
- fin de boucle : on passe à l'itération suivante -> i = 2
- dans la case du numéro de feuille, le chiffre change (par macro) et devient 2
- en conséquence, la case de nom de l'entreprise remarque que le numéro est 2 et prend ainsi le nom de l'entreprise associé au numéro 2
- la feuille est donc prête à être imprimée : j'exécute via ma macro la commande d'impression de la feuille
- etc, etc ... jusqu'à arriver au numéro 500
- le code est arrivé à sa 500ème itération, la boucle arrive donc à sa fin, la macro s'arrête, et tes 500 feuilles ont été imprimées.

Est-ce clair ? Est-ce cela que tu veux ?
 

xUpsilon

XLDnaute Accro
Entendu, dans ce cas, si on considère que le numéro de la feuille est inscrit en A1 voici une macro qui devrait être suffisante
VB:
Sub Impression()
    
For i = 1 to 500
    Range("A1")= i
    ActiveSheet.PrintOut
Next i

End sub
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…