Code VBA : Exporter en PDF (correction) ?

Bonjour à tous,

J'ai un bouton affecté à une macro qui me permet d'exporter la page active en fichier PDF dans le dossier choisi.
Cependant, voilà que j'utilise la macro 2 mois après la dernière utilisation et celle-ci me dit :

Erreur d'exécution '-2147024773 (8007007b)':

Erreur Automation
La Syntaxe du nom de fichier, de répertoire ou de volume est incorrecte.

Voici le code :

Sub Export_PDF()
Dim fichier As String
With Worksheets("Historique")
x = .Range("tabhisto").SpecialCells(xlCellTypeVisible).Address(0, 0)
n = Range(Split(x, ":")(0)).Row
fichier = "\" & .Range("C" & n) & " " & "-" & " " & "versements au" & " " & .Range("Q2") & ".pdf"
Dossier = "C:\Users\RAL\Desktop\Cloud\Rapports\2023"
chemin = Dossier & fichier
.ExportAsFixedFormat Type:=xlTypePDF, Filename:=chemin, Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
End With
End Sub

Lorsque je clique sur Débogage, il me met en surbrilance les lignes :

.ExportAsFixedFormat Type:=xlTypePDF, Filename:=chemin, Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False

Je n'ai jamais eu de souci, jusqu'à présent ... Y a-t-il eu une mise à jour entre temps ...

Pourriez-vous m'aider ?

Merci !

Bonjour

pour ce message d'erreur je pencherais sur un problème sur l'une ou l'autre de ces lignes :

fichier = "\" & .Range("C" & n) & " " & "-" & " " & "versements au" & " " & .Range("Q2") & ".pdf"
Dossier = "C:\Users\RAL\Desktop\Cloud\Rapports\2023"

soit le chemin d'accès n'existe plus .. donc il faut vérifier qu'il existe bien sur le bureau un dossier cloud avec les sous dossier rapports puis 2023

et vérifier que le profil est toujours le même "RAL" si le fichier a changé d'ordinateur... par exemple..

soit il y a dans les cellules Cn ou Q2 des caractères interdits dans les noms de fichiers par exemple "\" au autre...

Fred

Bonjour à vous 2

A noter qu'en général un nom de fichier doit rester juste le nom et la ligne peut être optimisée

fichier = .Range("C" & n) & " - " & "versements au " & .Range("Q2") & ".pdf"

Le dossier quant à lui doit contenir le dernier antislash

Dossier = "C:\Users\RAL\Desktop\Cloud\Rapports\2023\"

A+

Bonjour,

Merci à tous les deux !

C'était en effet un problème de cellule : la cellule Q2 ayant changé ...

Je clôture, merci !

Rechercher des sujets similaires à "code vba exporter pdf correction"