macro enregistrer sous PDF changement de nom du document

christophe62

XLDnaute Nouveau
Salut tout le monde

Voilà avec mes piètres connaissances, je me suis fais un bouton macro pour enregistrer une feuille de mon classeur en format PDF sur mon bureau.
mon code donne

Sub pdffixe()
'
' pdffixe Macro
'

'
Sheets("courrier").Select
ChDir "C:\Users\Christophe\Desktop"
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"C:\Users\Christophe\Desktop\courrier devis Christophe2.pdf", Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=False
End Sub

ce que je voudrais c'est que le nom de mon fichier prenne le nom d'une cellule se trouvant dans la feuille "mise en page" en case L19
 

kiki29

XLDnaute Barbatruc
Re : macro enregistrer sous PDF changement de nom du document

Salut, qqch dans le genre :
Code:
Option Explicit

Sub SaveAsPDF()
Dim sNom As String
    sNom = Worksheets("mise en page").Range("L19")
    If NomFichierValide(sNom) Then
        ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
                "C:\Users\Christophe\Desktop\" & sNom, Quality:= _
                xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
                OpenAfterPublish:=False
    Else
        Worksheets("mise en page").Range("L19").Select
    End If
End Sub

Private Function NomFichierValide(sChaine As String) As Boolean
Dim i As Long
Const CaracInterdits As String = """*/:<>?[\]|"
    NomFichierValide = True
    If Len(sChaine) = 0 Then
        NomFichierValide = False
        Exit Function
    End If
    For i = 1 To Len(CaracInterdits)
        If InStr(sChaine, Mid$(CaracInterdits, i, 1)) > 0 Then
            NomFichierValide = False
            Exit Function
        End If
    Next i
End Function
 

Roland_M

XLDnaute Barbatruc
Re : macro enregistrer sous PDF changement de nom du document

bonjour,

il suffit de modifier ActiveSheet par: Sheets("courrier")

ici:

Sheets("courrier").ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"C:\Users\Christophe\Desktop\" & sNom, Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
 

Discussions similaires

Statistiques des forums

Discussions
312 247
Messages
2 086 591
Membres
103 248
dernier inscrit
Happycat