Enregistrer une feuille (masquée) en format .pdf

Bonjour Forum!

Est-ce qu'il est possible, selon vous, d'enregistrer en format pdf une feuille qui est masquée sans devoir utiliser la fonction ".Visible" ou ".Select"? Actuellement, j'ai un codage qui fonctionne très bien dans le cas où la feuille est visible. Toutefois je voudrais que cette feuille reste en tout temps masquée. Je vous met le code plus bas que j'utilise actuellement qui me permet de faire l'opération sans problème avec une feuille visible uniquement :

        Sheets("DATA_CT").ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        ThisWorkbook.Path & "\" & Sheets("DATA_01").Range("F2").Value & "_Codification du projet", Quality:= _
            xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=True

Peut-être que quelqu'un aurait la réponse? Merci d'avance!

Bonjour CedL,

Vous n'avez pas le choix que d'afficher la feuille, en revanche vous pouvez très bien faire

Sub Test()
  Application.ScreenUpdating = False
  With Sheets("DATA_CT")
    .Visible = xlSheetVisible
    .ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        ThisWorkbook.Path & "\" & Sheets("DATA_01").Range("F2").Value & "_Codification du projet.pdf", Quality:= _
            xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=True
    .Visible = xlSheetHidden
  End With
  Application.ScreenUpdating = True
End Sub

C'est quasiment invisible

A+

Bonjour,
Une proposition.
Cdlt.

Public Sub CreatePDF()
Dim wb As Workbook, ws As Worksheet, sPath As String, sFile As String, v As XlSheetVisibility

    Set wb = ThisWorkbook
    Set ws = wb.Worksheets("DATA_CT")
    sPath = wb.Path & Application.PathSeparator
    sFile = sPath & ws.Cells(2, 6).Value & "_Codification du projet.pdf"

    With ws
        v = .Visible
        .Visible = xlSheetVisible
        .ExportAsFixedFormat Type:=xlTypePDF, _
                             Filename:=sFile, _
                             Quality:=xlQualityStandard, _
                             IncludeDocProperties:=True, _
                             IgnorePrintAreas:=False, _
                             OpenAfterPublish:=True
        .Visible = v
    End With

End Sub

Re,
@BrunoM45,
Oups ! Pas vu ton intervention.
Bonne journée.
Cdlt.

Rebonjour BrunoM45,

C'est malheureux, j'aurais aimé pouvoir le faire sans l'afficher puisqu'on voit toute l'opération ce passer derrière le UserForm, c'était uniquement pour une question d'esthétique visuel. Je ne n'ai rien pu trouver ailleurs non plus donc je pense bien que je n'aurai pas le choix!

Merci pour l'aide!

Bonjour CedL, BrunoM45, Jean-Eric,

Si tu ne souhaites pas un affichage, place dans les codes proposés:

Pour le premier,

Sub Test()
  Application.visible = False
  Application.ScreenUpdating = False
  With Sheets("DATA_CT")
...
'suite du code pour l'impression PDF
...
  Application.ScreenUpdating = True
  Application.visible = True
End sub

Pour le deuxième,

Public Sub CreatePDF()
Dim wb As Workbook, ws As Worksheet, sPath As String, sFile As String, v As XlSheetVisibility
  Application.visible = False
...
'Suite du code pour l'affichage PDF
...
Application.visible = True
End sub

Ainsi seul le formulaire sera mis en avant le temps que l'impression se réalise.

Rechercher des sujets similaires à "enregistrer feuille masquee format pdf"