Rangement automatique
Bonjour, je souhaite enregistrer sous format pdf un fichier excel. De façon automatique, je souhaite que le nom du fichier porte le nom d'une case spécifique et soit rangé dans un dossier avec une date spécifique.
Le code que j'ai trouvé est le suivant :
Sub test()
Dim cheminDossier, nouveauNom
nouveauNom = Sheets("Reporting").Range("N1")
nouveauNom = Replace(nouveauNom, "/", "_")
cheminDossier = "M:\REPORTING DE GESTION\Multitalent M\" & nouveauNom
MkDir cheminDossier
Dim cheminFichier
cheminFichier = cheminDossier & "\" & ActiveSheet.[T4] & ".pdf"
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=cheminFichier, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=True
End Sub
Cependant, une fois que le dossier est créé avec l'instruction MkDir, la macro bug, et ne veut plus enregistrer un autre fichier... qui a la même date mais pas le même nom.
Comment puis-je résoudre ce problème ?
Merci à vous pour votre aide
Bonjour Maeljourdain,
Essaye ce code pour voir
Sub test()
Dim cheminDossier, nouveauNom
nouveauNom = Sheets("Reporting").Range("N1")
nouveauNom = Replace(nouveauNom, "/", "_")
cheminDossier = "M:\REPORTING DE GESTION\Multitalent M\" & nouveauNom
' En cas d'erreur lors de la création du dossier, on continue le code
On Error Resume Next
' Créer le dossier
MkDir cheminDossier
' Activer la gestion normale des erreur
On Error GoTo 0
Dim cheminFichier
cheminFichier = cheminDossier & "\" & ActiveSheet.[T4] & ".pdf"
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=cheminFichier, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=True
End Sub
A+
Salut BrunoM45,
comment ce fait-il qu'un message Erreur d'éxécution'-2147024773 (8007007b))':
"Document non enregistré" apparait ?
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=cheminFichier, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=True
cette partie là est surlignée en jaune
merci pour ton aide
Re,
Dans l'éditeur VBA il faudrait mettre un point d'arrêt [F9] sur la ligne qui pose problème
Lorsque ta ligne apparaîtra, mets ton curseur de souris sur ta variable "cheminfichier"
Ou dans la fenêtre d'exécution, tapes : debug.print cheminfichier
et Entrée pour avoir la valeur de ta variable
A+