Sauvegarde d'un fichier Macro-Enabled - Erreur 1004

Bonjour à toutes et tous,

Tout d'abord, je tiens à préciser que je ne suis qu'un apprenti sorcier dans le monde des Macros.

Je tente de créer un fichier macro-enabled à partir su nom contenu dans une cellule, mais j'ai une erreur d'exécution 1004.

L'erreur apparaït sur la ligne: "ActiveWorkbook.SaveAs FileName"

Le nom du fichier est contenu dans la cellule E4

La Macro est la suivante:

Sub ChangingFileName()
Range("E3").Select
Selection.Copy
Range("E4").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("E4").Select
Application.CutCopyMode = False

Dim FileName As Variant
Dim ValCellE4 As String
Dim Path As String

ValCellE4 = Range("E4").Value
Path = "D:\_Professional Occupation_\Ortho Clinical Diagnostics\Calendars\"

FileName = Application.GetSaveAsFilename(Path, ValCellE4, ".xlsm", "Excel Macro-Enabled Workbook,*.xlsm", 1)

'Oops, the user backed out of this so don't save the file
If TypeName(FileName) = "Boolean" Then
MsgBox "You didn't save the file!"
Else

'Ok, all is good, we have the details, so go ahead and save the workbook
ActiveWorkbook.SaveAs FileName
MsgBox "File Saved!"
End If
End Sub

Merci d'avance pour vos conseils...

Je tiens à préciser que ce projet est une partie d'un autre qui vise à réinitialiser un fichier et à en changer le nom.

La macro ci-dessus n'est donc qu'un extrait

bonjour et

,

GetSaveAsFilename n'a rien à faire dans cette histoire : On l'utilise pour demander à l'utilisateur d'entrer un nom au clavier.

Ce n'est pas le cas ici puisque le nom est connu.

Vous ne devez pas nom plus utiliser la variable path qui est une commande VBA :

utilisez :

Dim MyPath As String
MyPath = "D:\_Professional Occupation_\Ortho Clinical Diagnostics\Calendars\

Ensuite remplacez la ligne "FileName = ..." par :

    ActiveWorkbook.SaveAs Filename:= MyPath & ValCellE4 & ".xlsm", FileFormat:= _
        xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False

Le reste de la macro n'est pas utile, la variable FileName non plus. Ce n'est pas un mot réservé mais un argument des commandes SaveAS et GetSaveAs inapproprié dans votre utilisation. Supprimez tout cela.

Au final cette macro devrait convenir :

Sub ChangingFileName()
Dim NewName As String
Dim MyPath As String
NewName = Range("E3").Value
MyPath = "D:\_Professional Occupation_\Ortho Clinical Diagnostics\Calendars\"
ActiveWorkbook.SaveAs FileName:=MyPath & NewName & ".xlsm", FileFormat:= _
        xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False
End Sub

A+

Respect!

Merci beaucoup

Rechercher des sujets similaires à "sauvegarde fichier macro enabled erreur 1004"