![]() |
|
Forum
|
|
|
#1 (permalink) |
|
Guest
Messages: n/a
|
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 |
|
| ANNONCES | |||
|
|
|
|
#2 (permalink) |
|
XLDnaute Accro
Date d'inscription: octobre 2005
Version Excel : Excel 2000 (PC)
Messages: 1 919
|
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 |
|
|
|
|
|
#3 (permalink) |
|
Guest
Messages: n/a
|
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 @+ |
|
|
|
#4 (permalink) |
|
XLDnaute Barbatruc
Date d'inscription: février 2005
Localisation: Liège
Version Excel : Excel 2004 (MAC)
Messages: 3 551
|
Bonsoir,
essaie ceci Code:
Dim chemin as string chemin = 'C:\\temp\\' ActiveWorkbook.SaveAs Filename:=chemin & 'Nom de ton fichier avec extension' ![]() |
|
|
|
|
|
#5 (permalink) |
|
XLDnaute Accro
Date d'inscription: octobre 2005
Version Excel : Excel 2000 (PC)
Messages: 1 919
|
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
Amicalement Charly
__________________
Amicalement, Charly2 |
|
|
|
|
|
#6 (permalink) |
|
Guest
Messages: n/a
|
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. @+ |
|
|
|
#7 (permalink) |
|
XLDnaute Accro
Date d'inscription: octobre 2005
Version Excel : Excel 2000 (PC)
Messages: 1 919
|
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 |
|
|
|
|
|
#8 (permalink) |
|
XLDnaute Barbatruc
Date d'inscription: février 2005
Messages: 3 833
|
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 |
|
|
|
|
|
#9 (permalink) | |
|
XLDnaute Barbatruc
Date d'inscription: février 2005
Messages: 3 100
|
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:
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) |
|
|
|
|
|
|
#10 (permalink) |
|
Guest
Messages: n/a
|
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. @+ |
|
|
| ANNONCES | |
![]() |
| Liens sociaux |
| Outils de la discussion | |
|
|