Sauvegarde fichier par VBA

Résolu
mijean94 Messages postés 415 Date d'inscription   Statut Membre Dernière intervention   -  
mijean94 Messages postés 415 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

J'utilise le code ci-dessous pour sauvegarder automatiquement mes fichiers.

je n'ai rien changé à mon code, dans le module ou se trouve ce code, et ça ne marche plus.
le chemin est bien indiqué dans la cellule E2 de la feuille 6 !!!

Voici le code :

Dim chemin As String
chemin = ThisWorkbook.Worksheets(6).Range("E2")

MsgBox ("le chemin mémorisé est : " & chemin)

nom_xls = (chemin & Nom & ".xls")
ActiveWorkbook.ActiveSheet.SaveAs Filename:=nom_xls


j'ai ajouté un MsgBox pour voir, et la variable chemin affiche "vide" ???

Auriez-vous une piste de recherche ?

Merci d'avance.

Cordialement
A voir également:

3 réponses

cs_Le Pivert Messages postés 7904 Date d'inscription   Statut Contributeur Dernière intervention   729
 
Bonjour,

Dans ton autre post tu fais ceci:

 chemin_devis = Sheets("données_logiciel").Range("E2").Value


Pourquoi ne pas faire la même chose au lieu de mettre un numéro (qui ne correspond peut-être pas à ta feuille):

 chemin = Sheets("données_logiciel").Range("E2").Value



0
cs_Le Pivert Messages postés 7904 Date d'inscription   Statut Contributeur Dernière intervention   729
 
Une autre source d'erreur:

je n'ai rien changé à mon code, dans le module ou se trouve ce code,

Si tu travailles sur plusieurs modules, l'erreur provient certainement de ta variable chemin qui n'est pas déclarée Public!
0
mijean94 Messages postés 415 Date d'inscription   Statut Membre Dernière intervention   11 > cs_Le Pivert Messages postés 7904 Date d'inscription   Statut Contributeur Dernière intervention  
 
Bonjour,

Merci pour ta réponse.

J'ai suivi ta remarque du post 1 et effectivement je n'ai plus de problème.
Tu doit peut-être aussi avoir raison pour la remarque du post 2 . j'ai aujourd'hui 9 modules.

Peux-tu juste me donner plus d'explication sur "déclarée Public" ?

Cordialement
0
cs_Le Pivert Messages postés 7904 Date d'inscription   Statut Contributeur Dernière intervention   729
 
Un petit cours a lire en entier pour comprendre:

https://silkyroad.developpez.com/VBA/LesVariables/#LV

Et pour ton problème voir:

Le niveau des variables
0
mijean94 Messages postés 415 Date d'inscription   Statut Membre Dernière intervention   11
 
Bonjour,

Merci pour ta réponse.

A la lecture du texte, de ton lien, me vient une question:

Pour que la variable soit utilisable dans toutes les macros du projet, il faut utiliser l'instruction Public et la variable doit impérativement être placée en tête d'un module standard :

Dans le texte on parle de toutes les macros du projet.

il faut comprendre :

Placer la variable dans n'importe quel module même s'il y a 10 modules ?
la variable sera OK pour tous les modules ?
les UserForm ?
les macros dans les feuilles ?

Cordialement
0
cs_Le Pivert Messages postés 7904 Date d'inscription   Statut Contributeur Dernière intervention   729
 
Le mieux, tu insères un nouveau module pour mettre toutes tes variables qui sont Public .
Attention, comme il est dit dans le lien, il ne doit pas avoir de doublons de variable!
Quand tu mets une variable Public, tu supprimes celle qui se trouve dans un module.
Apprends toi à mettre Option Explicit tout en haut de tes modules. Cela corrige les erreurs de déclaration de variable

Bonne continuation
0
mijean94 Messages postés 415 Date d'inscription   Statut Membre Dernière intervention   11
 
Bonjour,

Merci pour ces réponses. je vais appliquer à la lettre.

Cordialement
0