OVH Cloud OVH Cloud

Tester la présence d'un répertoire en VBA

5 réponses
Avatar
Daniel
Re bonjour à tous!
Encore une petite question!

J'aimerai tester la présence d'un répertoire. J'ai lu quelques sujets qui en
parlait mais rien de clair! J'ai lu des allusion à une fonction
GetFileAttributes() !!!!

Mon souhait est de tester si dans le repertoire
I:\LOGISTIQUE\ETIQUETTES\METIERS
Il y à déjà un répertoire quii porte un nomp précis!

Si il y en a un je le supprime, sinon, je le créer !!

Possible ou pas possibles docteur ??

5 réponses

Avatar
papou
Bonjour
Tu peux faire ça assez simplement :
On Error Resume Next
ChDir "C:Tests"
If Err <> 0 Then
Select Case MsgBox("Répertoire non présent" & vbLf & "le créer ?" _
, vbQuestion + vbYesNo, "Non trouvé")
Case vbYes: MkDir ("C:TEST")
Case Else: Exit Sub
End Select
Else: MsgBox "le répertoire est bien là", vbInformation, "Trouvé"
End If

Cordialement
Pascal

"Daniel" a écrit dans le message de
news:
Re bonjour à tous!
Encore une petite question!

J'aimerai tester la présence d'un répertoire. J'ai lu quelques sujets qui
en

parlait mais rien de clair! J'ai lu des allusion à une fonction
GetFileAttributes() !!!!

Mon souhait est de tester si dans le repertoire
I:LOGISTIQUEETIQUETTESMETIERS
Il y à déjà un répertoire quii porte un nomp précis!

Si il y en a un je le supprime, sinon, je le créer !!

Possible ou pas possibles docteur ??




Avatar
Daniel
Merci PAPOU!

Ca marche à merveille !

Merci merci et merci!


"papou" wrote:

Bonjour
Tu peux faire ça assez simplement :
On Error Resume Next
ChDir "C:Tests"
If Err <> 0 Then
Select Case MsgBox("Répertoire non présent" & vbLf & "le créer ?" _
, vbQuestion + vbYesNo, "Non trouvé")
Case vbYes: MkDir ("C:TEST")
Case Else: Exit Sub
End Select
Else: MsgBox "le répertoire est bien là", vbInformation, "Trouvé"
End If

Cordialement
Pascal

"Daniel" a écrit dans le message de
news:
Re bonjour à tous!
Encore une petite question!

J'aimerai tester la présence d'un répertoire. J'ai lu quelques sujets qui
en

parlait mais rien de clair! J'ai lu des allusion à une fonction
GetFileAttributes() !!!!

Mon souhait est de tester si dans le repertoire
I:LOGISTIQUEETIQUETTESMETIERS
Il y à déjà un répertoire quii porte un nomp précis!

Si il y en a un je le supprime, sinon, je le créer !!

Possible ou pas possibles docteur ??









Avatar
papou
Re
Ok par contre méfies-toi il y a une petite erreur de typo dans le code
fourni :
Entre le nom du répertoire ici
ChDir "C:Tests"
et là

Case vbYes: MkDir ("C:TEST")


...mais bon j'imagine que tu avais corrigé par toi-même.

Cordialement
Pascal

"Daniel" a écrit dans le message de
news:
Merci PAPOU!

Ca marche à merveille !

Merci merci et merci!


"papou" wrote:

Bonjour
Tu peux faire ça assez simplement :
On Error Resume Next
ChDir "C:Tests"
If Err <> 0 Then
Select Case MsgBox("Répertoire non présent" & vbLf & "le créer ?" _
, vbQuestion + vbYesNo, "Non trouvé")
Case vbYes: MkDir ("C:TEST")
Case Else: Exit Sub
End Select
Else: MsgBox "le répertoire est bien là", vbInformation, "Trouvé"
End If

Cordialement
Pascal

"Daniel" a écrit dans le message de
news:
Re bonjour à tous!
Encore une petite question!

J'aimerai tester la présence d'un répertoire. J'ai lu quelques sujets
qui



en
parlait mais rien de clair! J'ai lu des allusion à une fonction
GetFileAttributes() !!!!

Mon souhait est de tester si dans le repertoire
I:LOGISTIQUEETIQUETTESMETIERS
Il y à déjà un répertoire quii porte un nomp précis!

Si il y en a un je le supprime, sinon, je le créer !!

Possible ou pas possibles docteur ??











Avatar
Daniel
Oui, en fait j'ai supprimer la boite de dialogue!

Mon code est :
On Error Resume Next
ChDir "I:LOGISTIQUEETIQUETTESMETIERS" &
Sheets("RESUMER").Range("B11").Value
If Err <> 0 Then
MkDir "I:LOGISTIQUEETIQUETTESMETIERS" &
Sheets("RESUMER").Range("B11").Value
End If

Merci papou!


Re
Ok par contre méfies-toi il y a une petite erreur de typo dans le code
fourni :
Entre le nom du répertoire ici
ChDir "C:Tests"
et là

Case vbYes: MkDir ("C:TEST")


....mais bon j'imagine que tu avais corrigé par toi-même.

Cordialement
Pascal

"Daniel" a écrit dans le message de
news:
Merci PAPOU!

Ca marche à merveille !

Merci merci et merci!


"papou" wrote:

Bonjour
Tu peux faire ça assez simplement :
On Error Resume Next
ChDir "C:Tests"
If Err <> 0 Then
Select Case MsgBox("Répertoire non présent" & vbLf & "le créer ?" _
, vbQuestion + vbYesNo, "Non trouvé")
Case vbYes: MkDir ("C:TEST")
Case Else: Exit Sub
End Select
Else: MsgBox "le répertoire est bien là", vbInformation, "Trouvé"
End If

Cordialement
Pascal

"Daniel" a écrit dans le message de
news:
Re bonjour à tous!
Encore une petite question!

J'aimerai tester la présence d'un répertoire. J'ai lu quelques sujets
qui



en
parlait mais rien de clair! J'ai lu des allusion à une fonction
GetFileAttributes() !!!!

Mon souhait est de tester si dans le repertoire
I:LOGISTIQUEETIQUETTESMETIERS
Il y à déjà un répertoire quii porte un nomp précis!

Si il y en a un je le supprime, sinon, je le créer !!

Possible ou pas possibles docteur ??
















Avatar
Ange Ounis
Une autre approche possible (à partir d'Excel 2000) :

'****************
Sub TraitementDossier()
Dim S As String, D As String, i As Byte

'dossier à trouver ou créer
S = "D:test1tmptest2"

If Dir(S, vbDirectory) <> "" Then
'le dossier existe on le supprime
'd'abord son contenu
Kill S & "*.*"
'puis le dossier
RmDir S
Else
'sinon on le crée
D = Split(S, "")(0) & ""
For i = LBound(Split(S, "")) + 1 To UBound(Split(S, ""))
'sous dossier par sous dossier
D = D & Split(S, "")(i) & ""
On Error Resume Next
MkDir D
On Error GoTo 0
Next
End If
End Sub
'****************

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

Re bonjour à tous!
Encore une petite question!

J'aimerai tester la présence d'un répertoire. J'ai lu quelques sujets qui en
parlait mais rien de clair! J'ai lu des allusion à une fonction
GetFileAttributes() !!!!

Mon souhait est de tester si dans le repertoire
I:LOGISTIQUEETIQUETTESMETIERS
Il y à déjà un répertoire quii porte un nomp précis!

Si il y en a un je le supprime, sinon, je le créer !!

Possible ou pas possibles docteur ??