Problème avec SaveAs dans une macro

Bonjour tout le monde,

Je me permets de vous solliciter pour essayer de résoudre un mystère que j'ai avec une petite macro:

Sub test()

    Set wb = Workbooks.Open("/Users/benjaminbatignani/Documents/dossier1/Facture Vierge.xlsx")

    wb.SaveAs FileName:="/Users/benjaminbatignani/Documents/Auto Entrepreneur/Facture n°1.xls", FileFormat:=xlWorkbookNormal

    wb.Close

End Sub

L'idée c'est donc d'ouvrir un classeur existant et de l'enregistrer ailleurs avec un nouveau nom.

Le truc c'est qu'avec certains chemins d'accès cela fonctionne, exemples:

- /Users/benjaminbatignani/Documents/Auto Entrepreneur/Factures/2024/8. Août/Facture n°1.xls

-/Users/benjaminbatignani/Documents/Auto Entrepreneur/Factures/2024/9. Septembre/Facture n°1.xls

- etc...

Mais avec d'autres répertoires cela ne fonctionne plus, exemples:

-/Users/benjaminbatignani/Documents/Auto Entrepreneur/Factures/2024/10. Octobre/Facture n°1.xls

- /Users/benjaminbatignani/Documents/Auto Entrepreneur/Facture n°1.xls

Quand ça ne fonctionne pas, ça m'ouvre le fichier mais avec l'erreur 400:

capture d ecran 2024 10 07 a 11 28 44

Est ce que quelqu'un pourrait avoir une idée d'où ça pourrait provenir?

Merci d'avance :-)

Bonjour,

Le titre du post indique un problème lié à l'enregistrement sous un autre nom et dans le post vous indiquez que l'erreur 400 est consécutive à l'ouverture du fichier ...

Avez-vous exécuté la macro en mode pas à pas pour voir exactement sur quelle ligne l'erreur se produit ?

Si c'est avec l'instruction "SaveAs", avez-vous essayé sans mentionner le format ou avec d'autres formats de fichiers pour voir si l'erreur persiste ?

Cdlt,

Cylfo

Bonjour,

Oui j'ai essayé pas à pas ou en ne mettant que la ligne concernant l'ouverture du fichier, et ce n'est pas cela qui bloque.

J'ai également essayé sans mentionner le format ou avec d'autres formats et l'erreur est la même.

C'est vraiment le SaveAs qui pose problème.

Selon le chemin que je précise, cela fonctionne ou non.

Par exemple: j'ai un dossier nommé "2024" dans lequel j'ai 12 dossiers de type "1. Janvier", "2. Février",etc... (cf PJ)

Ma macro fonctionne en précisant le chemin de tout ces dossiers sauf le "10. Octobre". C'est à dire que les chemins ci dessous fonctionnent:

wb.SaveAs FileName:="/Users/benjaminbatignani/Documents/Auto Entrepreneur/Factures/2024/1. Janvier/Facture n°1.xls"

wb.SaveAs FileName:="/Users/benjaminbatignani/Documents/Auto Entrepreneur/Factures/2024/2. Février/Facture n°1.xls"

wb.SaveAs FileName:="/Users/benjaminbatignani/Documents/Auto Entrepreneur/Factures/2024/3. Mars/Facture n°1.xls"

Etc...

Mais avec les chemins ci dessous, cela ne fonctionne pas...

wb.SaveAs FileName:="/Users/benjaminbatignani/Documents/Auto Entrepreneur/Factures/2024/10. Octobre/Facture n°1.xls"

wb.SaveAs FileName:="/Users/benjaminbatignani/Documents/Facture n°1.xlsx"
capture d ecran 2024 10 07 a 19 08 56

Bonjour,

l'erreur 400 est un peu fourre-tout et ne renseigne pas.
Pas d'erreur du style une espace trop à la fin du nom du répertoire ?
Copie ton chemin et colle-le dans l'explorateur de fichier voir s'il s'ouvre bien (ajoute le lecteur)
eric

Nan justement je fais des copier/coller sur les noms des chemins pour être sûrs.

C'est vraiment bizarre!

J'avais pensé à un problème de droits d'accès au dossier mais j'ai vérifié et ce n'est pas ça non plus.

Bonjour,

Je ne suis pas sur mac donc je ne connais pas trop, mais est-ce que cela ne pourrait pas etre du à un fichier déjà présent avec le meme nom et/ou ouvert en meme temps ?

Je ne suis pas sur que SaveAs sache s'occuper du cas ou le fichier existe déjà dans le dossier cible.

Bonjour Saboh,

Nan ce n'est pas non plus ça :-(

J'avais justement vérifié au préalable.

Rechercher des sujets similaires à "probleme saveas macro"