Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2016 création pdf excluant certaines feuilles vba

  • Initiateur de la discussion Initiateur de la discussion Prisme974
  • 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 !

Prisme974

XLDnaute Nouveau
Bonjour à tous,

Je souhaite sélectionner plusieurs feuilles Excel sauf 2 d'entre elles intitulées Feuil1 et Feuil2, puis créer un pdf comprenant toutes les feuilles sauf ces 2 citées.

J'ai écris ce code mais il ne fonctionne pas. Pourriez-vous me dire ce qui ne va pas ?

Merci par avance et bonne journée


VB:
ChDir "C:\Users\x\Desktop"
    For Each f In ThisWorkbook.Sheets
        If f.Name <> "Feuil1" And f.Name <> "Feuil2" Then
            f.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
            "C:\Users\x\Desktop\Fichier-V9.pdf", Quality:=xlQualityStandard, _
            IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
            True
        End If
    Next
End Sub
 
Bonjour
Testez le code ci-dessous:
VB:
Sub test()
Dim Lt() As Variant
Root = "C:\Users\x\Desktop"
    L = -1
    For Each F In ThisWorkbook.Sheets
        If F.Name <> "Feuil1" And F.Name <> "Feuil2" Then
            ReDim Preserve Lt(L + 1)
            Lt(UBound(Lt)) = F.Name
            L = UBound(Lt)
        End If
    Next
    Worksheets(Lt).Select
    ActiveSheet.ExportAsFixedFormat _
        Type:=xlTypePDF, Filename:=Root & "\Fichier-V9.pdf", _
        OpenAfterPublish:=True
End Sub
 
Merci beaucoup pour votre réponse.

La ligne "Worksheets(Lt).Select" semble avoir un problème, elle est surlignée en jaune.
MVB m'indique une "erreur d'exécution '10004'. La méthode Select de la classe Sheets a échoué"
 
Correction:
VB:
Sub test()
Dim Lt As String, Root As String, F As Worksheet
Root = ThisWorkbook.Path
'Root = "C:\Users\x\Desktop"
    For Each F In ThisWorkbook.Worksheets
        If F.Name <> "Feuil1" And F.Name <> "Feuil2" Then
            Lt = IIf(Lt = "", "", Lt & "!") & F.Name
        End If
    Next
    If Lt <> "" Then
        Worksheets(Split(Lt, "!")).Select
        ActiveSheet.ExportAsFixedFormat _
            Type:=xlTypePDF, Filename:=Root & "\Fichier-V9.pdf", _
            OpenAfterPublish:=True
    Else
        MsgBox "Rien à Exporter"
    End If
End Sub
 
- 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
3
Affichages
887
Réponses
3
Affichages
672
Réponses
10
Affichages
547
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…