impression de plusieur onglet
#1
Aspirant XLPages

Inscription: 22/11/2011
De Champeaux (Seine et Marne)

Messages: 21

Système d'exploitation:
PC
Version Excel utilisée:
2010
Posté le : 25-11-2011 17h23
Bonsoir le forum!
j'ai fait un code "avec de l'aide bien sur" pour choisir quels onglets imprimer
pour chaque onglet j'aimerai pourvoir choisir aussi une quantité de copie avec une valeur par défaut fixé à 1. la présentation n'a aucune importance.
je joints un fichier exemple.
je vous remercie d'avance pour l'aide que vous m'apporter
Pièce jointe:
xlsm Impression.xlsm   [ Taille: 24.81 Ko - Téléchargements: 387 ]

"Le plus lent à promettre est toujours le plus fidèle à tenir."
Hors Ligne
Rapport   Haut 

Re: impression de plusieur onglet
#2
Accro XLPages

Inscription: 09/01/2008
De Montréal, Québec

Messages: 463

Système d'exploitation:
PC
Version Excel utilisée:
97 à 2016
Posté le : 26-11-2011 19h43
Bonjour Slijack,

Petit classeur modifié à partir de celui que tu as fourni.

Le code est commenté mais il se peut que tu aies d'autres questions, ne te gêne pas.
Je n'ai pas beaucoup de temps maintenant mais je suis disponible pour répondre à tes commentaires.

Cordialement,

Guy
Pièce jointe:
xlsm Impression_Mod.xlsm   [ Taille: 32.37 Ko - Téléchargements: 420 ]

Hors Ligne
Rapport   Haut 

Re: impression de plusieur onglet
#3
Aspirant XLPages

Inscription: 22/11/2011
De Champeaux (Seine et Marne)

Messages: 21

Système d'exploitation:
PC
Version Excel utilisée:
2010
Posté le : 27-11-2011 00h17
Bonsoir Guy,
tout d'abord merci pour ton aide.
ton code fonctionne bien, mais ce n'est pas tout à fait ce que je voudrai
1 - besoin de charger le nom des onglet car dans le classeur final les onglets changeront souvent de nom
2 - après chaque nom d'onglet un choix de Nbr de copie valeur fixer à 1 par défaut
exemple:
Feuil2 Nbr copie 2
Feuil3 Nbr copie 3
et si dans la ListBox l'onglet Feuil1 pouvait être exclus cela serai parfait
je te remercie d'avance pour ton aide A+

Pièce jointe:
xls Impression.xls   [ Taille: 45.00 Ko - Téléchargements: 391 ]

"Le plus lent à promettre est toujours le plus fidèle à tenir."
Hors Ligne
Rapport   Haut 

Re: impression de plusieur onglet
#4
Accro XLPages

Inscription: 17/08/2007
De Québec, Canada

Messages: 180

Système d'exploitation:
PC
Version Excel utilisée:
Excel 2003, 2007 (FR) & MsProject 2003
Posté le : 27-11-2011 05h23
Salut le forum

Pour le bouton Charger Onglets
Sub ChargeListBox()
Dim Sh As Object
With Sheets("Feuil1").ListBox1
    .MultiSelect = fmMultiSelectExtended
    .ColumnCount = 2
    .ColumnWidths = "60;20"
    .Enabled = True
    .Clear
  For Each Sh In Sheets
   If Sh.Name <> ActiveSheet.Name Then
    .AddItem 'ajout d'une ligne
      .List(.ListCount - 1, 0) = Sh.Name
      .List(.ListCount - 1, 1) = 1
   End If
  Next Sh
End With
End Sub
Un bouton permettant de choisir le nombre de feuille.
Sub NbreFeuille()
Dim Nbre As Byte, I As Integer

Nbre = Application.InputBox("Indiquer le nombre d'impression", Type:=1)

With Sheets("Feuil1").ListBox1
  For I = 0 To .ListCount - 1
    If .Selected(I) Then .List(I, 1) = Nbre
  Next I
End With

End Sub
Pour l'impression
Sub Imprimer()
Dim i As Integer

With Sheets("Feuil1").ListBox1
  For i = 0 To .ListCount - 1
    If .List(i, 1) > 0 Then Sheets(.List(i, 0)).PrintOut Copies:=.List(i, 1)
  Next i
End With

End Sub
Mytå

Hors Ligne
Rapport   Haut 

Re: impression de plusieur onglet
#5
Accro XLPages

Inscription: 09/01/2008
De Montréal, Québec

Messages: 463

Système d'exploitation:
PC
Version Excel utilisée:
97 à 2016
Posté le : 27-11-2011 17h35
Bonjour Slijack, Myta,

Je crois que nous devrions aller lentement en la circonstance.

Je m'en voudrais de ne pas citer l'exergue que tu présentes, Silkjack : "Le plus lent à promettre est toujours le plus fidèle à tenir."

Donc, as-tu zieuté le petit classeur que je t'ai envoyé ou t'es-tu contenté de ne remarquer que j'avais supprimé le bouton Charger Onglet? Et pourquoi ai-je supprimé ce bouton? Parce qu'à l'ouverture du classeur l'action exécutée par ce bouton est exécutée en sourdine dans la procédure  Workbook_Open(). Voilà pour les onglets qui changent de noms.

Aussi, et puisque les onglets changeront de noms, on ne doit pas utiliser de lignes de code comme :
With Sheets("Feuil1")
car au changement de nom d'onglet CracBoum! Marche plus.

As-tu remarqué que je n'utilise que le nom de code des feuilles et que j'ai modifié le nom de code de la feuille qui porte les boutons en FeuilleMaitresse?

Donc je suggère, humblement, de continuer cette discussion en suivant le fil des modifications à partir du classeur Impression_Mod.xlsm. Nous avons déjà suffisamment de pain sur la planche avec celui-ci pour ne pas faire d'explosions combinatoires en .xls avec boutons et tutti quanti.

Je prends donc les règles suivantes
Citation :
1 - besoin de charger le nom des onglets car dans le classeur final les onglets changeront souvent de nom
2 - après chaque nom d'onglet un choix de Nbr de copie valeur fixer à 1 par défaut


comme point de départ des prochaines modifications à apporter au classeur Impression_Mod.xlsm.

Modifications qui suivront avec quelques explications et une prière : lire le code et m'indiquer les points obscurs.

Cordialement,

Guy



Hors Ligne
Rapport   Haut 

Re: impression de plusieur onglet
#6
Accro XLPages

Inscription: 09/01/2008
De Montréal, Québec

Messages: 463

Système d'exploitation:
PC
Version Excel utilisée:
97 à 2016
Posté le : 27-11-2011 23h29
Bonjour Slijack,

Le point 1 a été divisé en trois points
    1.1- Création ou ajout d'une nouvelle feuille.
    1.2- Modification du nom d'onglet d'une feuille.
    1.3- Suppression d'une feuille.

J'ai aussi tenu compte du point 2.

Pour détecter l'ajout d'une feuille au classeur quoi de mieux que d'utiliser l'événement
Workbook_NewSheet(ByVal Sh As Object)
à partir duquel on pourra mettre en place une astuce de surveillance du changement de nom de l'onglet.

Cette astuce consiste à poser dans la feuille Impression (dont le nom de code est FeuilleMaitresse) une cellule avec une formule faisant référence à la feuille nouvellement ajoutée.

Ainsi par exemple en cellule Impression!E24, ce qui est affiché "Bonjour" est le nom de la feuille référencée par =NomOnglet(Bonjour!A1). Si l'usager modifie le nom Bonjour, la fonction mettra à jour le nouveau nom de cet onglet. À noter que pour que le processus soit automatique la fonction NomOnglet doit être volatile, c'est-à-dire recalculée automatiquement à chaque changement. Voilà donc réglés les points 1.1 et 1.2

Reste le dernier point : si l'utilisateur supprime une feuille, qu'advient-il de la référence à celle-ci dans la liste?

À la suppression d'une feuille le moteur de calcul d'Excel doit réviser toutes les formules faisant références à la feuille disparue et l'événement Calculate est déclenché. Nous nous appuierons sur cet événement
Workbook_SheetCalculate(ByVal Sh As Object)
avec la procédure SurveillerSuppressionOnglet() pour mettre à jour la liste des onglets du classeur.  La référence à la feuille supprimée sera de la forme #REF!A1 et on supprimera la ligne complète portant cette référence brisée.

Je n'ai inclus aucun gestionnaire d'erreur, à dessein. Teste le classeur tel qu'il est en ajoutant et supprimant des feuilles, sauf évidemment, la feuille Impression et donne-moi des nouvelles.

Nous peaufinerons la chose en fonction de tes remarques.

Cordialement,

Guy
Note : Merci Didier, pas plus d'un point dans le nom de fichier. Ce sera mon mantra désormais, j'espère.




Pièce jointe:
xlsm Impression_Mod_0_1.xlsm   [ Taille: 38.36 Ko - Téléchargements: 430 ]
Edité par Guy le 28/11/2011 00:33:12

Hors Ligne
Rapport   Haut 

Re: impression de plusieur onglet
#7
Aspirant XLPages

Inscription: 22/11/2011
De Champeaux (Seine et Marne)

Messages: 21

Système d'exploitation:
PC
Version Excel utilisée:
2010
Posté le : 28-11-2011 21h17
bonsoir Guy

ce coup ci c'est nickel cela fonction comme je le voulais un grand merci pour ton travail il me reste plus qu'à l'adapter à mon fichier
encore merci

"Le plus lent à promettre est toujours le plus fidèle à tenir."
Hors Ligne
Rapport   Haut 


Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

[Recherche avancée]


Qui consulte actuellement ce sujet ?   1 Utilisateur(s) anonymes