XL 2013 Enregistrer en fonction du nom en format pdf

Etn

XLDnaute Occasionnel
Bonjour le forum !

Je souhaiterais enregistrer mon fichier en format pdf, dans un répertoire déterminé et le nom serait en cellule A1.
Après quelques recherches j'ai essayé de faire un mix entre :
-Enregistrer en format PDF (réussi)
-Enregistrer dans un répertoire déterminé et le nom en fonction de la cellule A1 (réussi en .xls).

Le problème c'est que je n'arrive pas à concilier les deux (erreur de syntaxe toute bête j'en suis sûr...)

Voici le code pour enregistrer en fonction du nom et dans le chemin déterminé:
VB:
Sub Enregistrer()
Dim Nom As String
Nom = Range("A1") & ".xls"
If ThisWorkbook.Path = "" Then 'si le document n'a jamais été enregistré
  SendKeys Nom
  Application.Dialogs(xlDialogSaveAs).Show 'boîte de dialogue Enregistrer sous
Else
  If Range("A1") = "" Then MsgBox "Entrez le nom du fichier en A1", 48: Range("A1").Select: Exit Sub
  If MsgBox("Voulez-vous enregistrer le fichier sous le nom " & Nom & " ?", 4) = 6 Then
    On Error Resume Next
    ThisWorkbook.SaveAs ThisWorkbook.Path & "\" & Nom 'Enregistre dans le même dossier
    If Err Then MsgBox "Le nom proposé contient des caractères interdits", 48: Range("A1").Select
  End If
End If
End Sub
Celui pour enregistrer en PDF :
VB:
Worksheets("Exemple").Range("A1:M42").ExportAsFixedFormat Type:=xlTypePDF, _
    Filename:="Y:\Projet alternant\test\salut.pdf", _ 'salut est le nom du fichier
    Quality:=xlQualityStandard, _
    IncludeDocProperties:=True, _
    IgnorePrintAreas:=False, _
    OpenAfterPublish:=False
Et dans ma tentative j'en suis là :
VB:
Sub test3()
Dim Nom As String
Nom = Range("A1")
Worksheets("Exemple").Range("A1:M42").ExportAsFixedFormat Type:=xlTypePDF, _
  Filename:="Y:\Projet alternant\test\"&Nom&".pdf", _
  Quality:=xlQualityStandard, _
  IncludeDocProperties:=True, _
  IgnorePrintAreas:=False, _
  OpenAfterPublish:=False
End Sub
Le &Nom&".pdf" passe pas je crois :(

Merci d'avance pour votre aide,

Etn
 

Fichiers joints

Hieu

XLDnaute Impliqué
Salut,

Essaie ceci :
VB:
Sub oij()
chemin = ThisWorkbook.Path & "\"
    Sheets("Exemple").Range("A1:M42").ExportAsFixedFormat _
        Type:=xlTypePDF, Filename:=chemin & Range("a1") & ".pdf", _
        Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, _
        IgnorePrintAreas:=False, OpenAfterPublish:=False
End Sub
 
  • J'aime
Reactions: Etn

Discussions similaires


Haut Bas