Enregistrement vba

Fermé
mimine - 15 janv. 2004 à 10:37
WhiteFang Messages postés 2063 Date d'inscription dimanche 1 septembre 2002 Statut Membre Dernière intervention 15 février 2008 - 15 janv. 2004 à 14:16
bonjour,
Je code actuellement une petite appli en ba sous excel. j'ai cree une petite macro qui enregistre une copie de mon classeur sous un nom donné :
ActiveWorkbook.SaveAs "" & nom & ""

mais je sias ps pourquoi, la copie ne s'effectue pas dans le repertoire courrant du classeur (mesdoc/classeur/) mais dans le repertoire mesdoc/ !! comment faire pour que la copie se fasse dans le repertoire courrant?
merci

3 réponses

salut
par defaut excel enregistre sur le rep courant defini dans les options
dans ton cas de doit etre mesdoc
pour y remedier
1 ) change le rep courant mesdocs en mesdocs/classeur
2) ouvre excel fait fichier ouvrir faire parcourir , trouver le bon dossier , ouvrir le fichier et lance ta macro ( cela enregistrera dans le rep selectionné
3 ) mettre le nom complet du fichier ( chemin+nom ) dans ta proc
4 ) recuperer le nom du chemin en vba et le mettre dans ta proc

si ca peut t'aider
0
oui mais en fait mon appli sera lancée par plusieurs personne qui n'auront pas forcement le meme repertoire... en fait je voudrais l'enregistrer dans le repertoire du classeur qu'on veut copier... mais je ne sais pas comment reccuperer le chemin d'acces de mon classeur...
0
WhiteFang Messages postés 2063 Date d'inscription dimanche 1 septembre 2002 Statut Membre Dernière intervention 15 février 2008 204
15 janv. 2004 à 14:16
;-)

Utilise Application.GetSaveAsFilename xxx, cela te permettra d'avoir une appli qui sera capable d'enregistrer un fichier où tu veux... A toi de passer la variable en public pour en faire un truc universel...

;-)

Déjà, va voir dans les Application.Getxxx, ça te donnera des idées !! ;-)

Pour le reste, va voir aussi dans les fonctions Dir()....

Une chose à savoir, si tu ne spécifies pas le chemin complet, c'est le chemin en cours qui est utilisé... D'où l'utilité de Chdrive, Chdir...


;-)

Wild and Free
0