Créer un dossier par macro

  • Initiateur de la discussion Initiateur de la discussion Adeus33
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Adeus33

XLDnaute Occasionnel
Bonjour tous le monde

J'aimerai créer un dossier par macro dont l'adresse se trouve sur la feuil 'info' dans la cellule F2
Par exemple:
F2= C:\\essai\\truc1 (y a les slash mais le forum ne les prend pas)

J'ai essayé avec le code ci dessous mais cela ne fonctionne pas.

Code:
emplacement = Sheets('info').Range('F2')
If fs.folderexists(emplacement) = False Then
fs.createfolder (emplacement)
End If

Merci d'avance.

Adeus33

Message édité par: Adeus33, à: 16/05/2006 16:09
 
vite fait

A+
Code:
if dir(Sheets('info').Range('F2').value,vbdirectory)='' then msgbox _
'le répertoire ' & Sheets('info').Range('F2').value & ' n'existe pas', vbokonly+vbinformation

Message édité par: yeahou, à: 16/05/2006 16:55
 
Bonjour,

J'ai une autre question concernant la création de dossier.

Avec l'instruction MkDir on peut créer un nouveau dossier, jusque la tous va bien mais prenons un exemple.

j'essais de créer l'emplacement suivant:
C:\\archivage\\niveau1\\niveau2

Si l'emplacement C:\\archivage\\niveau1 est dejà créé tous va bien on peut créer le dossier niveau2 mais par contre si il n'est pas créer ca va pas.

Ya t'il un moyen de créer d'un seul coup une arborescence ou faut il passer par plusieurs étapes?

Merci d'avance

Adeus
 
Bonjour

il faut passer par plusieurs étapes avec un code type
Code:
If Dir('C:\\archivage', vbDirectory) = '' Then MkDir 'C:\\archivage'
If Dir('C:\\archivage\\niveau1', vbDirectory) = '' Then MkDir 'C:\\archivage\\niveau1'
If Dir('C:\\archivage\\niveau1\\niveau2', vbDirectory) = '' Then MkDir 'C:\\archivage\\niveau1\\niveau2'

Cordialement, A+
 
ok merci Yeahou, c'est bien ce que je pensais malheureusement.


Mais si l'emplacement est inscrit dans une cellule
Par exemple cellule A1 comment faire pour réaliser cette tache

C:-archivage-niveau1-niveau2-niveau3 inscrit dans A1

et seul C:-archivage existe

Il faut que le système soit capable de reperer le premier - en partant de la droite puis inscrire la valeur dans une nouvelle variable(sans le dernier terme).
Ensuite il faut retester si cela existe puis refaire la boucle, etc....

Est ce possible par VBA?

Je crois que je vais pouvoir me débrouiller mais je ne connais pas l'instruction qui me permettrait de trouver le premier - en partant de la droite.

Adeus33
 
Bonjour

on utilise ce genre de code

A+
Code:
Sub Créer_Chemin()
Dim Chemin As String, Compteur As Integer
Chemin = Range('A1')
Compteur = 4'laisser à 4 si le chemin comprend le lecteur sinon 1
Do
Compteur = InStr(Compteur, Chemin, '\\', 1)
If Compteur > 0 Then
If Dir(Left(Chemin, Compteur - 1), vbDirectory) = '' Then MkDir Left(Chemin, Compteur - 1)
Compteur = Compteur + 1
End If
Loop Until Compteur = 0
MkDir Chemin
End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

F
  • Question Question
Réponses
11
Affichages
1 K
C
Réponses
3
Affichages
933
Carlich
C
B
Réponses
4
Affichages
2 K
benoitoleron
B
D
Réponses
3
Affichages
946
D
J
Réponses
3
Affichages
2 K
jujunexcelpas
J
P
Réponses
0
Affichages
898
panpipes
P
K
Réponses
0
Affichages
3 K
K
Retour