Incrémentation d’un numéro à chaque impression[Résolu]

kanna

XLDnaute Nouveau
Bonjour à toutes et à tous,

je vous expose le problème que je rencontre.
J'ai un document excel dans lequel j'ai un numéro dans une céllule donnée.

Pour l'exemple on peut prendre le 1 dans la cellule A1

je souhaite qu'à chaque impression ce numéro s'incrémente de 1 à la fois dans la cellule mais aussi sur la page imprimée.

Et par exemple si je fais une impression en masse, je souhaite que cela fonctionne aussi.
Par exemple si je fais fichier\ imprimer et que je mets 20 en nombre de copies, je souhaite que la première impression sorte avec le chiffre 1, et ainsi de suite jusqu'à la dernière.
Et que le chiffre dans la céllule A1 s'incrémente aussi pour qu'à la prochaine utilisation les numéros se suivent bien.

je ne suis pas contre l'utilisation d'un bouton qui me demande le nombre de copies souhaitées.

Est-ce que quelqu'un peut m'aider à mettre cela en place?

Merci d'avance pour votre aide.
 
Dernière édition:

job75

XLDnaute Barbatruc
Re : Incrémentation d’un numéro à chaque impression

Bonjour kanna,

On peut toujours mettre dans ThisWorkbook :

Code:
Private Sub Workbook_BeforePrint(Cancel As Boolean)
Sheets("Feuil1").[A1] = Sheets("Feuil1").[A1] + 1
End Sub
La cellule A1 s'incrémente chaque fois qu'on exécute la commande Imprimer.

Mais si l'on demande 20 copies, je ne pense pas qu'il soit possible de modifier la feuille entre chaque copie...

A+
 

kanna

XLDnaute Nouveau
Re : Incrémentation d’un numéro à chaque impression

Bonjour Job75,

j'avais déjà vu cette macro et je l'ai testée, mais malheureusement elle ne corresponds pas à mes attentes.
En effet, le chiffre s'incrémente bien au niveau de la cellule mais à l'impression c'est le 2 qui s'imprime.
Et en effet ça ne fonctionne pas lorsque l'on utilise fichier\imprimer et que l'on demande plusieurs copies :(

Merci tout de même pour ta réponse.
 

job75

XLDnaute Barbatruc
Re : Incrémentation d’un numéro à chaque impression

Re,

En effet, le chiffre s'incrémente bien au niveau de la cellule mais à l'impression c'est le 2 qui s'imprime.

Si au départ la cellule A1 est vide (ou égale à 0) le 1 s'imprimera.

Et si l'on veut vraiment numéroter toutes les copies, il faudra utiliser exclusivement cette macro :

Code:
Sub Imprimer()
Dim n As Variant
1 n = InputBox("Nombre de copies :", "Imprimer")
If n = "" Then Exit Sub
If Val(n) = 0 Then GoTo 1
For n = 1 To Val(n)
  ActiveSheet.PrintOut
Next
End Sub

Avec toujours la macro BeforePrint dans ThisWorkbook.

A+
 

job75

XLDnaute Barbatruc
Re : Incrémentation d’un numéro à chaque impression

Re,

Voir le fichier joint. Pour la macro BeforePrint j'ai complété :

Code:
Private Sub Workbook_BeforePrint(Cancel As Boolean)
If ActiveSheet.Name = "Feuil1" Then _
  Sheets("Feuil1").[A1] = Sheets("Feuil1").[A1] + 1
End Sub

A+
 

Pièces jointes

  • Imprimer(1).xls
    39.5 KB · Affichages: 1 015
  • Imprimer(1).xls
    39.5 KB · Affichages: 967
  • Imprimer(1).xls
    39.5 KB · Affichages: 985

job75

XLDnaute Barbatruc
Re : Incrémentation d’un numéro à chaque impression

Re,

Avec cette version (2), il n'y a plus de bouton pour imprimer.

La macro dans ThisWorkbook :

Code:
Private Sub Workbook_BeforePrint(Cancel As Boolean)
If ActiveSheet.Name = "Feuil1" Then
  Cancel = True
  Imprimer
End If
End Sub

Et dans Module1 :

Code:
Sub Imprimer()
Dim n As Variant
1 n = InputBox("Nombre de copies :", "Imprimer")
If n = "" Then Exit Sub
If Val(n) = 0 Then GoTo 1
Application.EnableEvents = False 'évite le lancement de BeforePrint
With ActiveSheet
  For n = 1 To Val(n)
    .[A1] = .[A1] + 1 'numérotation
    .PrintOut
  Next
End With
Application.EnableEvents = True
End Sub

A+
 

Pièces jointes

  • Imprimer(2).xls
    37.5 KB · Affichages: 1 384

kanna

XLDnaute Nouveau
Re : Incrémentation d’un numéro à chaque impression

Job75 je ne sais pas comment te remercier!!!
c'est génial ça fonctionne super bien.
je l'ai adapté pour mon fichier et c'est nickel!!!!
Merci bcp pour ta rapidité en plus!

bonne journée
 
Dernière édition:

zenos

XLDnaute Nouveau
Re : Incrémentation d’un numéro à chaque impression[Résolu]

bonjour,je suis novice sur excel ,j'ai crée un classeur qui contient deux feuilles dans la premier lors de l'impression le numéro change automatiquement mais dans la deuxième ça ne marche pas pourrai- je avoir une petite aide merci
 

job75

XLDnaute Barbatruc
Re : Incrémentation d’un numéro à chaque impression[Résolu]

Bonsoir zenos, bienvenue sur XLD,

Je n'avais pas vu votre post.

Mais ce n'est vraiment pas compliqué, modifier la macro dans ThisWorkbook :

Code:
Private Sub Workbook_BeforePrint(Cancel As Boolean)
Cancel = True
Imprimer
End Sub
Macro Imprimer inchangée.

A+
 

silverskin

XLDnaute Nouveau
Re : Incrémentation d’un numéro à chaque impression[Résolu]

Merci Job75 pour cette petite macro.

J'aimerai pousser un peu la demande initiale.
En effet, je travaille sur une feuille Excel qui me donne à l'impression 4 pages avec une entête identique (j'ai sélectionner une zone à répéter en haut). Le numéro, se situe dans cette zone d'entête.
Donc avec notre macro ci-dessus, je me retrouve avec 4 fois le même numéro sur les 4 pages, puis la même chose incrémenté de 1...etc...

Ma question est comment incrémenter le numéro à la page? (dans l'entête).
Exemple:
Numéro de départ=1000
Feuille 1=4 pages
Nombre d'impression demandé=2

IMPRESSION 1
Page1:1001
Page2:1002
Page3:1003
Page4:1004
IMPRESSION 2
Page1:1005
Page2:1006
Page3:1007
Page4:1008
 

Monhtc

XLDnaute Occasionnel
Salut a tous pour une petite modification j'aimerais quant à moi avoir dans une cellule un numéro sous la forme 2019/0001...2019/0002 ...2019/0003 qui s’incrémente à chaque impression.
NB; en 2020 il reprend à 0 ET ce numéro pourrait être mise reconfigurer si erreur
 

ACHIR

XLDnaute Nouveau
Bonjour à tous...voila j'ai pas encore trouvé une application à double fonctions qui incrémente un numéro en excel lors de l'impression c à d incrémentation et impression en même temps....peut être que j'ai pas compris les formules que j'ai trouvé...ou je les pas bien manipulais..alors je demande respectueusement une aide à ce sujet.....voici mon émail en cas ou je ne vois pas une réponse dans ce coin ,,,mon mail : achir.kamel16@gmail.com et merci d'avance.....en tout cas je reste toujours ou pas regarder les nouvelles dans ce coin........et merci à tout le monde
 

Discussions similaires

Statistiques des forums

Discussions
314 628
Messages
2 111 343
Membres
111 108
dernier inscrit
Elias30