Enregistrement de fichier vba avec variable

Résolu
vincent -  
 Utilisateur anonyme -
Bonjour,

je souhiaterai coder un enregistrement automatique de fichier via vba pour excel à un endroit précis de mon ordinateur et lui donner comme nom final : BRP( partie fixe qui ne changera jamais) et une variable qu'il peut trouver en j2 de mon fichier généré.
La partie du code qui ne va pas est la suivante:

  ActiveWorkbook.SaveAs Filename:= _
        "c:\GESTION\"BRP"\" & Range("j2").value & ".xls", _
        FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
        ReadOnlyRecommended:=False, CreateBackup:=False


en effet quand je lance la macro, une alerte me signifie directement:

"erreur de compilation: erreur de syntaxe"

etant un plus que débutant en la matiere de vba je me permets de vous demander votre aide. J'ai bien essayé de regarder sur le net si quelqu'un avait déjà posé la question mais n'ai pas réussi à le coder avec le résultat de mes recherches.

Merci par avance de votre aide.


A voir également:

5 réponses

vincent
 
Bonjour Lupin,

merci de ton aide mais cette fois-ci j'ai un message qui dit:

" Erreur d'execution '1004':
La méthode 'SaveAs' de l'objet'_Workbook' a échoué"

Cdt,

Vincent
2
Utilisateur anonyme
 
re:

en plaçant un point d'arrêt sur la ligne :

ActiveWorkbooks.SaveAs ...

Place ton curseur sur la variable NomFichier

Son contenu est-il cohérent ?

tu pourrais être aussi plus explicite :

NomFichier = "C:\GESTION\BRP\" & Sheets("Feuil1").Range("j2").Value & ".xls"

Cdt

Lupin
0
chossette9 Messages postés 4239 Date d'inscription   Statut Contributeur Dernière intervention   1 311
 
Bonjour,

ce sont les guillemets dans ta déclaration autour de BRP qui font tout foirer !

Essaie avec
 ActiveWorkbook.SaveAs Filename:= _ 
        "c:\GESTION\BRP" & Range("j2").value & ".xls", _ 
        FileFormat:=xlNormal, Password:="", WriteResPassword:="", _ 
        ReadOnlyRecommended:=False, CreateBackup:=False

Cordialement.
Ce mec la n'était pas une lumière, car il était niais.
1
vincent
 
ok merci beaucoup pour le coupe de main ça marche du tonnerre!
bonne journée!!
0
vincent
 
excuse moi d'y revenir mais j'ai été un peu rapide en te disant que ca marche du tonnerre, puisque le résultat est que la variable en j2 n'apparait pas dans le nom du fichier enregistré.

Donc je n'ai plus de message d'erreur sur la syntaxe mais le nom de mon fichier n'est pas le bon...

Merci quand même!
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Utilisateur anonyme
 
Bonjour,

Diviser pour règner :

Option Explicit

Sub Sauvegarde()

    Dim NomFichier As String
    
    NomFichier = "C:\GESTION\BRP\" & Range("j2").Value & ".xls"

    ActiveWorkbook.SaveAs Filename:=NomFichier, _
        FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
        ReadOnlyRecommended:=False, CreateBackup:=False

End Sub


passer par une variable, n'a jamais fait de mal :-)

Cdt

Lupin
0