Excel Downloads
Forum

Précédent   Excel Downloads Forums > Excel > Forum Excel


Réponse
 
LinkBack Outils de la discussion
Vieux 27/11/2005, 23h40   #1 (permalink)
friscogreencar
Guest
 
Messages: n/a
Par défaut définir répertoire courant

Bonjour à tous,

je veux enregistrer un document dans un sous-répertoire :
ActiveWorkbook.SaveAs Filename:='C:\\\\\\\\temp\\\\\\\\' & Rep & '\\\\\\\\' & Nomxls
Y-a-t-il un moyen de remplacer 'C:\\\\\\\\temp\\\\\\\\' par currentdir, ou %currentdir% ou ....
En fait j'aimerai être indépendant du répertoire d'origine et toujours enregistrer dans le sous répertoire de celui ou le doc est situé.

Merci de votre aide
  Réponse avec citation
ANNONCES
Vieux 27/11/2005, 23h51   #2 (permalink)
XLDnaute Accro
 
Avatar de Charly2
 
Date d'inscription: octobre 2005
Version Excel : Excel 2000 (PC)
Messages: 1 919
Par défaut Re:définir répertoire courant

Bonsoir,

Pour obtenir le chemin de ton classeur, tu as l'instruction : ActiveWorkbook.Path.

Ton code devient alors :

With ActiveWorkbook
****.SaveAs Filename:=.Path & '\\\\' Rep & '\\\\' & Nomxls
End With

Amicalement
Charly
__________________
Amicalement,
Charly2
Charly2 est déconnecté   Réponse avec citation
Vieux 28/11/2005, 00h19   #3 (permalink)
frfiscogreencar
Guest
 
Messages: n/a
Par défaut Re:définir répertoire courant

merci de ton aide

mais il y a toujours une erreur.
Je rajoute les \\\\\\\\, et des ' dans tous les sens, mais rien n'y fait.

Et en plus, je ne trouve pas cette fonction dans l'aide VBA

si tu as une autre idée, je suis preneur

@+
  Réponse avec citation
Vieux 28/11/2005, 00h26   #4 (permalink)
Dan
XLDnaute Barbatruc
 
Avatar de Dan
 
Date d'inscription: février 2005
Localisation: Liège
Version Excel : Excel 2004 (MAC)
Messages: 3 551
Par défaut Re:définir répertoire courant

Bonsoir,

essaie ceci

Code:
Dim chemin as string
chemin = 'C:\\temp\\' 
ActiveWorkbook.SaveAs Filename:=chemin & 'Nom de ton fichier avec extension'
Dan est déconnecté   Réponse avec citation
Vieux 28/11/2005, 00h31   #5 (permalink)
XLDnaute Accro
 
Avatar de Charly2
 
Date d'inscription: octobre 2005
Version Excel : Excel 2000 (PC)
Messages: 1 919
Par défaut Re:définir répertoire courant

Bonsoir à tous les 2,

Ce n'est pas une fonction, c'est une propriété de Workbook. Je réessaie pour le code :

Code:
With ActiveWorkbook
    .SaveAs Filename:=.Path & '\\' Rep & '\\' & Nomxls
End With
En espérant que tout soit passé :unsure:

Amicalement
Charly
__________________
Amicalement,
Charly2
Charly2 est déconnecté   Réponse avec citation
Vieux 28/11/2005, 00h44   #6 (permalink)
Friscogreencar
Guest
 
Messages: n/a
Par défaut Re:définir répertoire courant

Merci à tous 2

Dan, je ne veux pas entrer le nom d'un répertoire et préfère une macro qui le fasse à ma place, sachant que je ne serai pas toujours dans le même.
j'ai donc retesté la formule de Charly, mais j'ai tjs une erreur de compilation sur .path

en fait j'espérais pouvoir m'en sortir avec un truc du style %Dir?%, un peu comme %windir% ou %systemdir%

Mais ça n'a pas l'air de vouloir fonctionner, je vais donc creuser du côté de path.

@+
  Réponse avec citation
Vieux 28/11/2005, 01h13   #7 (permalink)
XLDnaute Accro
 
Avatar de Charly2
 
Date d'inscription: octobre 2005
Version Excel : Excel 2000 (PC)
Messages: 1 919
Par défaut Re:définir répertoire courant

Re,

C'est curieux Je sais que j'ai XL97 mais je pensais que pour ce genre de propriété, il y avait une compatibilité ascendante !

Encore un coup de Bill :whistle:

Bonne recherche
@+
Charly

PS : Je viens d'aller voir sur la page 5 du wiki de MichelXLD et j'y ai lu la même chose que le code que je viens de te donner. Voici le lien si tu souhaites effectuer une recherche :
http://www.excel-downloads.com/html/...helXldPageCinq
__________________
Amicalement,
Charly2
Charly2 est déconnecté   Réponse avec citation
Vieux 28/11/2005, 07h09   #8 (permalink)
XLDnaute Barbatruc
 
Date d'inscription: février 2005
Messages: 3 833
Par défaut Re:définir répertoire courant

bonjour Friscogreencar , Charly et Dan

Charly , merci pour la pub ...;o)

en reprenant la solution donnée par Charly tu peux faire un essai en remplaçant ActiveWorkbook par ThisWorkbook

Dim Rep As String
Rep='le sous dossier'
ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & '\\\\\\\\' & Rep & '\\\\\\\\NomClasseur.xls'



bonne journée
MichelXld

Message édité par: michelxld, à: 28/11/2005 06:09
MichelXld est déconnecté   Réponse avec citation
Vieux 28/11/2005, 10h06   #9 (permalink)
XLDnaute Barbatruc
 
Date d'inscription: février 2005
Messages: 3 100
Par défaut Re:définir répertoire courant

Bonjour Michel, Dan, Charly, Frfiscogreencar, le Forum

En fait je me pose la question si j'ai bien lu la demande... Mais je crois que la soultion est avec 'MkDir'...

Faire une recherche dans le Forum Première génération qui proposera entre autre ce Fil Création de Repertoire

Grosso Modo, mais je dois partir, ça donnerait un truc comme ça :

Citation:
Sub CheckingMakingDir()
Dim TheCurrentPath AsString
Dim TheCurrentDir AsVariant
Dim i As Byte, NbRep AsByte
Dim ThePath AsString
Dim TheName AsString


ThePath = 'C:\temp\'
TheName = ActiveWorkbook.Name

TheCurrentPath = CurDir
TheCurrentDir = Split(TheCurrentPath, '\')


NbRep = UBound(TheCurrentDir)
* * * * ThePath = ThePath & TheCurrentDir(NbRep) & '\'
* * * * MakingDir ThePath
ActiveWorkbook.SaveAs Filename:=ThePath & TheName
EndSub

Sub MakingDir(ThePath As String)
OnErrorGoTo TheEnd
* * MKDIR ThePath
TheEnd:
EndSub

Bonne Journée
[ol]@+Thierry[/ol]

PS si tu as au moins Excel 2000, (sinon pour Excel 97, il faut passer par une combinaison de Instr et de Mid car il ne connait pas la Function Split)
_Thierry est déconnecté   Réponse avec citation
Vieux 29/11/2005, 01h30   #10 (permalink)
friscogreencar
Guest
 
Messages: n/a
Par défaut Re:définir répertoire courant

bonsoir et merci à tous,

La solution donnée par MichelXld fonctionne et répond à ma recherche, ce qui donne dans mon cas :

Nomxls As String
Nomxls = Range('B6') & '.xls'
ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & '\\' & Rep & '\\' & Nomxls

Le seul hic est qu'espérant une solution universelle, du genre répertoire par défaut=currentDir ou %CurrentDir% ou ..., là il s'agit d'une propriété de WorkBook, que je ne peux appliquer qu'avec cette fonction.
Or je veux aussi créer automatiquement ce sous-répertoire et y copier,de la même façon, un document Word (Rep étant le contenu d'une cellule, idem Nomxls et idem NomWord).

Je pense que ça va m'emmener trop loin, mais c'est super de trouver des gens compétents prêts à aider les néophytes.

@+
  Réponse avec citation
ANNONCES
Réponse

Liens sociaux

Outils de la discussion

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are oui
Pingbacks are oui
Refbacks are oui


Fuseau horaire GMT +2. Il est actuellement 07h06.


(C) 2006 Excel Downloads