OVH Cloud OVH Cloud

Synthaxe sur MKDIR et autre fonctionds

3 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

3 réponses

Avatar
Guy DETIENNE
Salut ;O)

Tu es sur un forum consacré à VB6 et versions ultérieures.
Pour Excel, je te conseil d'aller sur le forum microsoft.public.fr.excel.

Guy

"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
Guy DETIENNE
Re ;O)

Corrige "utlérieures" en "antérieures" ;O)

Guy

"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
Hervé
Bonsoir Daniel,

Dans la feuille "Lien", B1 a la valeur >> I:LOGISTIQUE << :

MkDir Sheets("Lien").[B1] & Sheets("RESUMER").[A1]

ActiveWorkbook.SaveAs Sheets("Lien").[B1] & _
"ETIQUETTES" & Range("Resumer!B11") & _
"" & ActiveSheet.Name & ".xls"

Workbooks.Open Sheets("Lien").[B1] & "BASE DE DONNEES.xls"

IsFileOpen (Sheets("Lien").[B1] & "BASE DE DONNEES.xls")

Sache tout de même que si les classeurs sur lesquels tu veux travailler sont
dans le même dossier que ton classeur où se trouvent ces macros, tu as la
proprièté "ThisWorkbook.Path" que tu peux utiliser de la manière suivante :

MkDir ThisWorkbook.Path & "" & Sheets("RESUMER").[A1]

ActiveWorkbook.SaveAs ThisWorkbook.Path & "" & _
"ETIQUETTES" & Range("Resumer!B11") & _
"" & ActiveSheet.Name & ".xls"

Workbooks.Open ThisWorkbook.Path & "" & "BASE DE DONNEES.xls"

IsFileOpen (ThisWorkbook.Path & "" & "BASE DE DONNEES.xls")

Dans ce cas, tu n'as plus à te soucier du chemin puisque "ThisWorkbook.Path"
retourne le chemin complet. Enfin, regarde si ça t'aide.
Au fait, tu n'es pas obligé d'écrire "Value" pour une cellule car c'est sa
valeur par défaut.
Hervé.

"Daniel" a écrit dans le message 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