Bonjour,
Après avoir recherché sur différents forums en vain, j'ai toujours un problème d'assemblage lors de l'impression de différentes feuilles (au sein du même classeur).
Avec un userform trouvé sur le net et légèrement modifié (code ci-dessous), j'ai une interface (checkbox) me permettant de selectionner les feuilles que je souhaite imprimer. Cette interface fonctionne très bien mais ne permet pas, lors d'impressions de plusieurs exemplaires, d'utiliser la fonction d'assemblage (Collate) alors que celle-ci semble activée.
Avez-vous une idée de l'origine du problème ? Avez-vous une idée de solution ?
Merci d'avance.
Thibault
	
	
	
	
	
		
	
		
			
		
		
	
				
			Après avoir recherché sur différents forums en vain, j'ai toujours un problème d'assemblage lors de l'impression de différentes feuilles (au sein du même classeur).
Avec un userform trouvé sur le net et légèrement modifié (code ci-dessous), j'ai une interface (checkbox) me permettant de selectionner les feuilles que je souhaite imprimer. Cette interface fonctionne très bien mais ne permet pas, lors d'impressions de plusieurs exemplaires, d'utiliser la fonction d'assemblage (Collate) alors que celle-ci semble activée.
Avez-vous une idée de l'origine du problème ? Avez-vous une idée de solution ?
Merci d'avance.
Thibault
		Code:
	
	
	Option Explicit
Dim n As Byte, Nb As Byte
Private Sub ComboBox1_Change()
End Sub
Private Sub ListBox1_Click()
End Sub
Private Sub UserForm_initialize()
    Dim i As Byte
    For i = 1 To 10
        ComboBox1.AddItem i
    Next i
'Alimentation en données de la combobox
        ComboBox1.ListIndex = 0
'L'index 0 correspond à la première donnée contenue dans le ComboBox
    For n = 2 To Sheets.Count
      ListBox1.AddItem Sheets(n).Name
    Next
    Nb = ListBox1.ListCount - 1
 End Sub
 Private Sub Tout_Click()
    For n = 0 To Nb
        ListBox1.Selected(n) = True
    Next
End Sub
Private Sub Rien_Click()
    For n = 0 To Nb
        ListBox1.Selected(n) = False
    Next
End Sub
Private Sub OK_Click()
    Dim Texte As String
    For n = 0 To Nb
        If ListBox1.Selected(n) = True Then
        Me.Hide
        'voir avant d'imprimer, avec : ShowModal=False !
        'Sheets(ListBox1.List(n)).PrintPreview
        Sheets(Array(ListBox1.List(n))).PrintOut Copies:=ComboBox1.Value, Collate:=True
        Imprimer.Show
        End If
    Next
    Unload Me
End Sub
Private Sub Annuler_Click()
    Unload Me
End Sub