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

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
 

fanch55

XLDnaute Barbatruc
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
 

Prisme974

XLDnaute Nouveau
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é"
 

fanch55

XLDnaute Barbatruc
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
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…