Probleme de creation repertoires et sous repertoire MKDIR

Bonjour,

J'ai besoin d'aide de votre part sur un fichier Excel qui permet de générer des répertoires et sous répertoires à partir d'une liste. J'ai essayé de fouiller dans le forum mais je ne trouve pas pourquoi ça ne marche pas.

Pour être plus précis dans mon fichier Excel, j'aimerai générer des répertoires à partir des cellules F19 à AK(cellule la plus basse). Dans ces cellules j'ai les adresses des répertoires à créer. Il n'y a pas de caractères interdits.

Dans ma macro2, je fais juste le test avec les cellules F19 à AK19 et j'ai la moitié de mes répertoires créés. Je ne comprends pas...

Pouvez-vous m'aider?

Voici mon fichier :

Bonjour davber

S'il s'agit de créer tous les chemins inscrits de F19 à AK29:

Sub CreaRep()
Dim i&, K&, Col%, MaxLigne&
Dim MonChemin$, SousDossier$
Dim Tmp As Variant

'MonChemin = Bureau pour les tests
MonChemin = CreateObject("WScript.Shell").specialFolders("Desktop") & "\"
'MonChemin = "C:\Users\BERNARD.DA\Documents\Dossier_racine\"

With Sheets("Calcul")
    MaxLigne = .Cells.Find("*", Cells(.Rows.Count, .Columns.Count), xlValues, , 1, 2, 0).Row
    For i = 19 To MaxLigne
        'Pour les colonnes de F à AK
        For Col = 6 To 37
            If .Cells(i, Col) <> "" Then
                Tmp = Split(.Cells(i, Col), "\")
                SousDossier = MonChemin
                For K = LBound(Tmp) To UBound(Tmp)
                    SousDossier = SousDossier & Tmp(K) & "\"
                    If Dir(SousDossier, vbDirectory) = "" Then
                        MkDir SousDossier
                    End If
                Next K
            End If
        Next Col
    Next i
End With
End Sub

Cordialement

Merci beaucoup, c'est exactement ce que je voulais.

Cordialement

Par contre Est-ce que tu pourrais me l'expliquer? J'aime bien comprendre ce que j'utilise. Notamment je ne comprend pas : Tmp = Split(.Cells(i, Col), "\") et Lbound et Ubound.

Merci beaucoup en tout cas

Re

L'instruction Split découpe une chaine de caractère avec le séparateur indiqué (dans notre cas le "\"

On se retrouve avec un tableau unidimensionnel.

Ensuite on boucle sur toutes les valeurs du tableau

Lbound = début du tableau (Lower Bound)

Ubound = fin du tableau (Uper Bound)

On fait ça pour vérifier que chaque sous dossiers du chemin est bien existant.

C'est ça le plus important : Vérifier en permanence que tous les sous dossier existent et, au besoin, les créer.

Je te laisse un classeur que j'avais fait pour une demande. (création d'une arborescence sur le bureau)

Il est expliqué, je pense que tu verra que les boucles vérifient la présence des chemins.

Cordialement

ok merci je comprends mieux.

Merci pour tout

Rechercher des sujets similaires à "probleme creation repertoires repertoire mkdir"