OVH Cloud OVH Cloud

mkdir, woorkbook open ... synthaxes ??

6 réponses
Avatar
Daniel
Re bonjour à tout le groupe !

Voilà, j’ai un problème avec les chemins d’accès pour les fonctions
suivantes :
- ActiveWorkbook.SaveAs filename:= _
- MkDir
- Workbooks.Open
- IsFileOpen

En fait, pour rendre évolutif mon application xls en cas de déplacement du
répertoire racine (I:\LOGISTIQUE) j’ai écrit en feuille « LIEN » cellule B1
ce chemin ! Mais je n’arrive pas à l’exploiter avec ces fonctions. Comment
faire ?

==>MkDIR : Actuellement la macro est celle-ci et elle fonctionne :
MkDir "I:\LOGISTIQUE\" & Sheets("RESUMER").Range("A1").Value

==> ActiveWorkbook.SaveAs filename : Actuellement la macro est celle-ci et
elle fonctionne :
ActiveWorkbook.SaveAs filename:= _
"I:\LOGISTIQUE\ETIQUETTES\" & Range("Resumer!B11") & "\" & ActiveSheet.Name
& ".xls"

==>Workbooks.Open: Actuellement la macro est celle-ci et elle fonctionne :
Workbooks.Open "I:\LOGISTIQUE\BASE DE DONNEES.xls"

==>IsFileOpen : Actuellement la macro est celle-ci et elle fonctionne :
IsFileOpen("I:\LOGISTIQUE\BASE DE DONNEES.xls")

Alors comment faire pour remplacer I:\LOGISTIQUE par la cellule B1 de la
feuille LIEN ??? c’est la syntaxe quin me bloque !!!

Merci d’avance pour votre coup de pouce !!!

Daniel

6 réponses

Avatar
LSteph
Re, bonjour,
tu pouvais rester sur le même fil, réponse!
Chdir lechemin
Mkdir lenouveaurep
.SaveAs lefichier


Amicalement

lSteph
"Daniel" a écrit dans le message de news:

Re bonjour à tout le groupe !

Voilà, j'ai un problème avec les chemins d'accès pour les fonctions
suivantes :
- ActiveWorkbook.SaveAs filename:= _
- MkDir
- Workbooks.Open
- IsFileOpen

En fait, pour rendre évolutif mon application xls en cas de déplacement du
répertoire racine (I:LOGISTIQUE) j'ai écrit en feuille « LIEN » cellule
B1
ce chemin ! Mais je n'arrive pas à l'exploiter avec ces fonctions. Comment
faire ?

==>MkDIR : Actuellement la macro est celle-ci et elle fonctionne :
MkDir "I:LOGISTIQUE" & Sheets("RESUMER").Range("A1").Value

==> ActiveWorkbook.SaveAs filename : Actuellement la macro est celle-ci et
elle fonctionne :
ActiveWorkbook.SaveAs filename:= _
"I:LOGISTIQUEETIQUETTES" & Range("Resumer!B11") & "" &
ActiveSheet.Name
& ".xls"

==>Workbooks.Open: Actuellement la macro est celle-ci et elle fonctionne :
Workbooks.Open "I:LOGISTIQUEBASE DE DONNEES.xls"

==>IsFileOpen : Actuellement la macro est celle-ci et elle fonctionne :
IsFileOpen("I:LOGISTIQUEBASE DE DONNEES.xls")

Alors comment faire pour remplacer I:LOGISTIQUE par la cellule B1 de la
feuille LIEN ??? c'est la syntaxe quin me bloque !!!

Merci d'avance pour votre coup de pouce !!!

Daniel



Avatar
Daniel
Comment ça ?

Pour le save as j'ai réussit de cette manière là :
Sub enregi()
ActiveWorkbook.SaveAs filename:= _
Range("RESUMER!B13") & Range("Resumer!B11") & "" & ActiveSheet.Name & ".xls"
End Sub

Mais pas avec le ActiveWorkbook.Path !!


Re, bonjour,
tu pouvais rester sur le même fil, réponse!
Chdir lechemin
Mkdir lenouveaurep
..SaveAs lefichier


Amicalement

lSteph
"Daniel" a écrit dans le message de news:

Re bonjour à tout le groupe !

Voilà, j'ai un problème avec les chemins d'accès pour les fonctions
suivantes :
- ActiveWorkbook.SaveAs filename:= _
- MkDir
- Workbooks.Open
- IsFileOpen

En fait, pour rendre évolutif mon application xls en cas de déplacement du
répertoire racine (I:LOGISTIQUE) j'ai écrit en feuille « LIEN » cellule
B1
ce chemin ! Mais je n'arrive pas à l'exploiter avec ces fonctions. Comment
faire ?

==>MkDIR : Actuellement la macro est celle-ci et elle fonctionne :
MkDir "I:LOGISTIQUE" & Sheets("RESUMER").Range("A1").Value

==> ActiveWorkbook.SaveAs filename : Actuellement la macro est celle-ci et
elle fonctionne :
ActiveWorkbook.SaveAs filename:= _
"I:LOGISTIQUEETIQUETTES" & Range("Resumer!B11") & "" &
ActiveSheet.Name
& ".xls"

==>Workbooks.Open: Actuellement la macro est celle-ci et elle fonctionne :
Workbooks.Open "I:LOGISTIQUEBASE DE DONNEES.xls"

==>IsFileOpen : Actuellement la macro est celle-ci et elle fonctionne :
IsFileOpen("I:LOGISTIQUEBASE DE DONNEES.xls")

Alors comment faire pour remplacer I:LOGISTIQUE par la cellule B1 de la
feuille LIEN ??? c'est la syntaxe quin me bloque !!!

Merci d'avance pour votre coup de pouce !!!

Daniel








Avatar
LSteph
Plus clairement pour changer et créer il faut deux temps:
Chdir sert à changer le répertoire où l'on se trouve (le paramêtre est le
nom d'un chemin existant donc possiblement activeworkbook.path)
MkDir crée un répertoire (le paramêtre est le nom du répertoire à créer à
l'endroit où l'on se trouve )
Alors que:
SaveAs utilise un nom de fichier pour enregistrer sur le répertoire courant
ou selon le chemin précisé+nom.

Amicalmement

lSteph

"Daniel" a écrit dans le message de news:

Comment ça ?

Pour le save as j'ai réussit de cette manière là :
Sub enregi()
ActiveWorkbook.SaveAs filename:= _
Range("RESUMER!B13") & Range("Resumer!B11") & "" & ActiveSheet.Name &
".xls"
End Sub

Mais pas avec le ActiveWorkbook.Path !!


Re, bonjour,
tu pouvais rester sur le même fil, réponse!
Chdir lechemin
Mkdir lenouveaurep
..SaveAs lefichier


Amicalement

lSteph
"Daniel" a écrit dans le message de
news:

Re bonjour à tout le groupe !

Voilà, j'ai un problème avec les chemins d'accès pour les fonctions
suivantes :
- ActiveWorkbook.SaveAs filename:= _
- MkDir
- Workbooks.Open
- IsFileOpen

En fait, pour rendre évolutif mon application xls en cas de déplacement
du
répertoire racine (I:LOGISTIQUE) j'ai écrit en feuille « LIEN »
cellule
B1
ce chemin ! Mais je n'arrive pas à l'exploiter avec ces fonctions.
Comment
faire ?

==>MkDIR : Actuellement la macro est celle-ci et elle fonctionne :
MkDir "I:LOGISTIQUE" & Sheets("RESUMER").Range("A1").Value

==> ActiveWorkbook.SaveAs filename : Actuellement la macro est celle-ci
et
elle fonctionne :
ActiveWorkbook.SaveAs filename:= _
"I:LOGISTIQUEETIQUETTES" & Range("Resumer!B11") & "" &
ActiveSheet.Name
& ".xls"

==>Workbooks.Open: Actuellement la macro est celle-ci et elle
fonctionne :
Workbooks.Open "I:LOGISTIQUEBASE DE DONNEES.xls"

==>IsFileOpen : Actuellement la macro est celle-ci et elle fonctionne :
IsFileOpen("I:LOGISTIQUEBASE DE DONNEES.xls")

Alors comment faire pour remplacer I:LOGISTIQUE par la cellule B1 de
la
feuille LIEN ??? c'est la syntaxe quin me bloque !!!

Merci d'avance pour votre coup de pouce !!!

Daniel










Avatar
Daniel
Ok! je vais essayé comme ça!

Merci beaucoup Lsteph pour ton aide!



Plus clairement pour changer et créer il faut deux temps:
Chdir sert à changer le répertoire où l'on se trouve (le paramêtre est le
nom d'un chemin existant donc possiblement activeworkbook.path)
MkDir crée un répertoire (le paramêtre est le nom du répertoire à créer à
l'endroit où l'on se trouve )
Alors que:
SaveAs utilise un nom de fichier pour enregistrer sur le répertoire courant
ou selon le chemin précisé+nom.

Amicalmement

lSteph

"Daniel" a écrit dans le message de news:

Comment ça ?

Pour le save as j'ai réussit de cette manière là :
Sub enregi()
ActiveWorkbook.SaveAs filename:= _
Range("RESUMER!B13") & Range("Resumer!B11") & "" & ActiveSheet.Name &
".xls"
End Sub

Mais pas avec le ActiveWorkbook.Path !!


Re, bonjour,
tu pouvais rester sur le même fil, réponse!
Chdir lechemin
Mkdir lenouveaurep
..SaveAs lefichier


Amicalement

lSteph
"Daniel" a écrit dans le message de
news:

Re bonjour à tout le groupe !

Voilà, j'ai un problème avec les chemins d'accès pour les fonctions
suivantes :
- ActiveWorkbook.SaveAs filename:= _
- MkDir
- Workbooks.Open
- IsFileOpen

En fait, pour rendre évolutif mon application xls en cas de déplacement
du
répertoire racine (I:LOGISTIQUE) j'ai écrit en feuille « LIEN »
cellule
B1
ce chemin ! Mais je n'arrive pas à l'exploiter avec ces fonctions.
Comment
faire ?

==>MkDIR : Actuellement la macro est celle-ci et elle fonctionne :
MkDir "I:LOGISTIQUE" & Sheets("RESUMER").Range("A1").Value

==> ActiveWorkbook.SaveAs filename : Actuellement la macro est celle-ci
et
elle fonctionne :
ActiveWorkbook.SaveAs filename:= _
"I:LOGISTIQUEETIQUETTES" & Range("Resumer!B11") & "" &
ActiveSheet.Name
& ".xls"

==>Workbooks.Open: Actuellement la macro est celle-ci et elle
fonctionne :
Workbooks.Open "I:LOGISTIQUEBASE DE DONNEES.xls"

==>IsFileOpen : Actuellement la macro est celle-ci et elle fonctionne :
IsFileOpen("I:LOGISTIQUEBASE DE DONNEES.xls")

Alors comment faire pour remplacer I:LOGISTIQUE par la cellule B1 de
la
feuille LIEN ??? c'est la syntaxe quin me bloque !!!

Merci d'avance pour votre coup de pouce !!!

Daniel















Avatar
LSteph
...en complément:
si tu as besoin pour changer d'unité il faut utiliser
ChDrive

a+
lSteph
"Daniel" a écrit dans le message de news:

Ok! je vais essayé comme ça!

Merci beaucoup Lsteph pour ton aide!



Plus clairement pour changer et créer il faut deux temps:
Chdir sert à changer le répertoire où l'on se trouve (le paramêtre est le
nom d'un chemin existant donc possiblement activeworkbook.path)
MkDir crée un répertoire (le paramêtre est le nom du répertoire à créer
à
l'endroit où l'on se trouve )
Alors que:
SaveAs utilise un nom de fichier pour enregistrer sur le répertoire
courant
ou selon le chemin précisé+nom.

Amicalmement

lSteph

"Daniel" a écrit dans le message de
news:

Comment ça ?

Pour le save as j'ai réussit de cette manière là :
Sub enregi()
ActiveWorkbook.SaveAs filename:= _
Range("RESUMER!B13") & Range("Resumer!B11") & "" & ActiveSheet.Name &
".xls"
End Sub

Mais pas avec le ActiveWorkbook.Path !!


Re, bonjour,
tu pouvais rester sur le même fil, réponse!
Chdir lechemin
Mkdir lenouveaurep
..SaveAs lefichier


Amicalement

lSteph
"Daniel" a écrit dans le message de
news:

Re bonjour à tout le groupe !

Voilà, j'ai un problème avec les chemins d'accès pour les fonctions
suivantes :
- ActiveWorkbook.SaveAs filename:= _
- MkDir
- Workbooks.Open
- IsFileOpen

En fait, pour rendre évolutif mon application xls en cas de
déplacement
du
répertoire racine (I:LOGISTIQUE) j'ai écrit en feuille « LIEN »
cellule
B1
ce chemin ! Mais je n'arrive pas à l'exploiter avec ces fonctions.
Comment
faire ?

==>MkDIR : Actuellement la macro est celle-ci et elle fonctionne :
MkDir "I:LOGISTIQUE" & Sheets("RESUMER").Range("A1").Value

==> ActiveWorkbook.SaveAs filename : Actuellement la macro est
celle-ci
et
elle fonctionne :
ActiveWorkbook.SaveAs filename:= _
"I:LOGISTIQUEETIQUETTES" & Range("Resumer!B11") & "" &
ActiveSheet.Name
& ".xls"

==>Workbooks.Open: Actuellement la macro est celle-ci et elle
fonctionne :
Workbooks.Open "I:LOGISTIQUEBASE DE DONNEES.xls"

==>IsFileOpen : Actuellement la macro est celle-ci et elle
fonctionne :
IsFileOpen("I:LOGISTIQUEBASE DE DONNEES.xls")

Alors comment faire pour remplacer I:LOGISTIQUE par la cellule B1
de
la
feuille LIEN ??? c'est la syntaxe quin me bloque !!!

Merci d'avance pour votre coup de pouce !!!

Daniel

















Avatar
Ange Ounis
Je ne sais pas si tes problèmes viennent de là, mais une remarque concernant
MkDir : cette instruction ne sait pas créer un chemin qui n'existe pas.
Si tu veux créer le dossier "Test" en c:dossier1dossier2 pour obtenir le
chemin final

c:dossier1dossier2test

MkDir ne peut le faire _que si_ dossier1 et dossier2 sont des dossiers
existants. Sinon, il faut créer les dossiers 1 par 1 :

MkDir "c:dossier1"
MkDir "c:dossier1dossier2"
MkDir "c:dossier1dossier2test"

D'autre part, si tu utilises ChDir pour te positionner en c:dossier1dossier2
avant de créer "test", cette procédure échoue si le lecteur est un lecteur
réseau (i: pour toi).

----------
Ange Ounis
----------

Re bonjour à tout le groupe !

Voilà, j’ai un problème avec les chemins d’accès pour les fonctions
suivantes :
- ActiveWorkbook.SaveAs filename:= _
- MkDir
- Workbooks.Open
- IsFileOpen

En fait, pour rendre évolutif mon application xls en cas de déplacement du
répertoire racine (I:LOGISTIQUE) j’ai écrit en feuille « LIEN » cellule B1
ce chemin ! Mais je n’arrive pas à l’exploiter avec ces fonctions. Comment
faire ?

==>MkDIR : Actuellement la macro est celle-ci et elle fonctionne :
MkDir "I:LOGISTIQUE" & Sheets("RESUMER").Range("A1").Value

==> ActiveWorkbook.SaveAs filename : Actuellement la macro est celle-ci et
elle fonctionne :
ActiveWorkbook.SaveAs filename:= _
"I:LOGISTIQUEETIQUETTES" & Range("Resumer!B11") & "" & ActiveSheet.Name
& ".xls"

==>Workbooks.Open: Actuellement la macro est celle-ci et elle fonctionne :
Workbooks.Open "I:LOGISTIQUEBASE DE DONNEES.xls"

==>IsFileOpen : Actuellement la macro est celle-ci et elle fonctionne :
IsFileOpen("I:LOGISTIQUEBASE DE DONNEES.xls")

Alors comment faire pour remplacer I:LOGISTIQUE par la cellule B1 de la
feuille LIEN ??? c’est la syntaxe quin me bloque !!!

Merci d’avance pour votre coup de pouce !!!

Daniel