Imprimer les onglets sélectionnés en VBA

Fermé
tchaz26 Messages postés 1 Date d'inscription jeudi 5 février 2015 Statut Membre Dernière intervention 5 février 2015 - 5 févr. 2015 à 22:56
 Maurice - 6 févr. 2015 à 11:06
Bonjour à tous,

dans le cadre de mon travail, je me retrouve à avoir à faire une "petite" macro qui filtre les onglets avant d'imprimer ceux qui doivent l'être.

pour ce faire, j'ai fait une macro qui me cache les onglets indésirables et qui sélectionne les onglets visible.(si vous la voulez, demandez la moi, mais c'est un peu du bricolage^^)

toute la macro marche jusqu'au moment d'imprimer ma sélection d'onglets.
mais un code vaux mieux que de grandes phrases, donc le voici:


Sub imp()
'début de ma macro qui cache les onglets à ne pas imprimer et qui fonctionne bien ;)
'
'sélection des onglets visibles
For Each ws In Worksheets
If ws.Visible = xlSheetVisible Then ws.Select Replace:=False
Next ws
'les onglets que je veux imprimer sont sélectionnés
'
'et la je n'arrive pas à trouver la syntaxe pour imprimer les onglets sélectionnés

End Sub



est-ce que quelqu'un aurai une idée à me proposer? (en plus je suis sur que c'est tout bête^^)
A savoir que la finalité est d'automatiser la création d'un document PDF unique, c'est pour cela que je fait une sélection, sinon imprimer feuille par feuille je sais faire ;).

ha et je suis sur excel 2010.

merci d'avance.
A voir également:

1 réponse

Bonjour

il faut pas cacher les onglet pour une edition pdf
mettre plutot une valeure dans une cellule

Dim Chemin As String

Sub ChercheFeuilles()
Dim Feuille As Worksheet
Feuil2.Select ' selection de la premieure feuille a imprimer Obligatoire
   For Each Feuille In Worksheets
      If Feuille.Range("A1").Value > 0 Then
         Feuille.Select Replace:=False
      End If
   Next
   
'NonFiche = Feuil4.Range("A2").Value & Feuil4.Range("F2").Value & Feuil4.Range("F5").Value & Feuil4.Name
NonFiche = "TestPdf"
Repertoire = ThisWorkbook.Path & "\"
Chemin = Repertoire & NonFiche & ".pdf"

   Edite_pdf
Feuil1.Select ' selection d'une aure Feuille pour desactiver les Onglet
MsgBox "Enregistrée en pdf dans le dossier ." & Chr(10) & Chr(10) & Chemin
   
End Sub

Sub Edite_pdf()
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        Chemin, Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
        False

End Sub


A+
Maurice
0