Impression de plusieurs feuilles...

  • Initiateur de la discussion Initiateur de la discussion i0raek
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

i0raek

XLDnaute Occasionnel
Bonjour à tous,

je reviens vers vous pour solliciter votre aide... 😱

Voici mon problème :
J'ai une userform avec une listbox qui se charge avec le nom de certaines feuilles.

A partir de la , je charge une liste avec les lignes sélectionnées de la listbox :
Code:
            TamponList=Array("")
            If listbox.Selected(i) = True Then
                ReDim Preserve TamponList(UBound(TamponList) + 1)
                TamponList(UBound(TamponList) - 1) = _
                    listbox.List(i)

            End If

Jusque la, tout va bien !
La ou ca se complique, c'est au niveau de l'impression...

Il ne comprend pas quand je lui mets :
Code:
sheets(tamponlist).printout

Pour lui, "l'indice n'appartient pas à la selection"...

Est ce que quelqu'un aurait une idée ?

Merci d'avance pour votre aide !!!
 
Re : Impression de plusieurs feuilles...

Bonsoir JNP,

en fait, je me suis dis que :
Code:
sheets(Array("Feuil1","Feuil2")).printout
était pareil que :
Code:
            TamponList=Array("")
            If listbox.Selected(i) = True Then
                ReDim Preserve TamponList(UBound(TamponList) + 1)
                TamponList(UBound(TamponList) - 1) = _
                    listbox.List(i)

            End If
            sheets(tamponlist).printout

le problème c'est que si je mets
Code:
Sheets(TamponList(i)).PrintOut

lorsque j'imprime en PDF, il me sort autant de fichiers que de feuilles...
 
Re : Impression de plusieurs feuilles...

Re 🙂,
Tu peux faire un script sur AcrobatPro pour rassembler tes PDF, mais je reconnais que c'est pas cool...
Par contre, si tu passes par une variable String en cumul des feuilles par concaténation et en utilisant les CodeName pour éviter les "", peut-être ?
A + 😎
 
Re : Impression de plusieurs feuilles...

Re,

l'idée de la string est vraiment bonne... mais ce serait trop simple !
par ce que même en concatenant, il me sort :

"Feuil1,Feuil2,Feuil3"

au lieu de

"Feuil1","Feuil2","Feuil3" 😡

je ne sais pas comment contourner le pb...

Si tu as une idée ?
 
Re : Impression de plusieurs feuilles...

Re !

alors, avec une petit Replace et quelques "" j'arrive à :

"Feuil1","Feuil2" mais ca ne fonctionne toujours pas !!! 🙁

voici le code :
Code:
        For i = 0 To listbox.ListCount - 1

            If listbox.Selected(i) = True Then
                If TamponString = "" Then
                    TamponString =listbox.List(i)
                Else
                    TamponString = TamponString & "," &  listbox.List(i)
                End If
            End If

        Next

Sheets(Array("""" & Replace(TamponString , "," , """,""") & """")).PrintOut

dans l'attente d'une petite illumination ! 😀
 
Re : Impression de plusieurs feuilles...

Re 🙂,
C'est pour cela que je te parlais de passer par les CodeName, càd le nom de la feuille en interne (dans le projet VBA) et non le nom changé dans l'onglet. Du fait, la String : Feuilles = "Feuil1, Feuil2, Feuil3" mise dans Sheets(Array(Feuilles).PrintOut pourrait marcher.
Bon courage 😎
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
40
Affichages
3 K
Retour