Impression PDF avec plusieurs feuilles selon case à cocher

Roussette35

XLDnaute Nouveau
Bonjour

Je souhaite réaliser une macro sous excel pour imprimer un pdf sous excel
La première partie fonctionne bien. Je crée bien un fichier pdf commençant par la feuille COUV et suivi de SOMMAIRE.
Je souhaiterais ajouter la feuille Annexe 1 si elle est cochée et/ou l'Annexe 2 si elle est cochée au pdf à suivre de la page SOMMAIRE.
ci-joint le fichier excel.


Sub Impression()
'
' Impression Macro

Sheets(Array("COUV", "SOMMAIRE")).Select
Sheets("COUV").Activate
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"C:\temp\test.pdf", Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=True
Sheets("EDITION").Select

End Sub

Merci de votre aide par avance
 

Fichiers joints

MichD

XLDnaute Impliqué
Re : Impression PDF avec plusieurs feuilles selon case à cocher

Bonjour,

A ) Donne au checkbox le même nom (caption -> ce que tu écris dessus) que les feuilles qu'ils représentent.
Attention aux fautes d'orthographe ou à un oubli d'espace entre le nom et l'index.

B ) La procédure va imprimer toutes les feuilles déjà sélectionnées + celles dont le checkbox est coché.


VB:
Sub Impression()
Dim Sh As Shape

For Each Sh In Worksheets("Edition").Shapes
    If TypeName(Sh.OLEFormat.Object) = "CheckBox" Then
        With Sh.OLEFormat.Object
            If .Value = 1 Then
                Worksheets(.Caption).Select False
            End If
        End With
    End If
Next
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
    "C:\Temp\test.pdf", Quality:=xlQualityStandard, _
    IncludeDocProperties:=True, IgnorePrintAreas:=False, _
    OpenAfterPublish:=True
    
    
Sheets("EDITION").Select
End Sub
 

Discussions similaires


Haut Bas