XL 2013 Création de dossier et sous dossier depuis ligne excel csv.

Aurelside

XLDnaute Nouveau
Bonjour,

A ce jour, j'ai une base de donnée qui me génère un fichier excel csv. Avec 7 colonnes.
Une colonne A avec le nom du client, B, le numéro client ect...

Je voudrais générer dans un dossier (dans un dossier du bureau par exemple peu importe) toute l'arborescence de chaque colonne dans ce dossier de la manière suivante :

Colonne A > Colonne B > C D E F G
Le dossier principale comprendra donc tous mes dossiers A qui lui, aura son dossiers B de la même ligne et CDEFG dans B.
Et ainsi de suite pour chaque ligne.

Ce programme me permettrai d'exporter toute ma base cliente sur une arborescence windows pour me permettre de mettre des documents sur chaque clients.

En plus, je ne sais pas si c'est possible. Dire au programme que si le fichier existe déjà, que celui ci ne soit pas remplacé mais ignoré.

J'ai pas mal fait de recherche mais sans trouver vraiment ce que je voulais. Mes connaissance en VBA sont limités et j'aurais grand besoin d'un coup de main.

Merci d'avance pour votre aide :)

PS : Je vous poste un petit text pour illustrer ce que je voudrais.
PS2 : J'ai mis mon fichier Excel csv en Excel xls pour que ça soit compatible avec le site.
 

Pièces jointes

  • testconversion1.jpg
    testconversion1.jpg
    28.7 KB · Affichages: 38
  • testconversion1.xlsx
    9.5 KB · Affichages: 21
Dernière modification par un modérateur:

Aurelside

XLDnaute Nouveau
Re : Création de dossier et sous dossier depuis ligne excel csv.

J'ai réussi à produite quelque chose :

Sub CreationRepertoires()
On Error Resume Next
i = 1
While Cells(i, 1).Value <> ""
MkDir ActiveWorkbook.Path & "\" & Cells(i, 1).Value
For j = 2
MkDir ActiveWorkbook.Path & "\" & Cells(i, 1).Value & "\" & Cells(i, j).Value
Next j
i = i + 1
Wend
End Sub

Par contre, j'arrive pas à répéter ma fonction pour ajouter CDEFG en sous dossier de B.
 

Efgé

XLDnaute Barbatruc
Re : Création de dossier et sous dossier depuis ligne excel csv.

Bonjour Aurelside
Enrgistre ton fichier quelque part puis tu mets ce code dans un module.
Pense a changer le nom de la feuille...
VB:
Sub Test()
Dim sDossier$, Chem$, STst$, i&, J&, Cpt&
Chem = ThisWorkbook.Path
sDossier = Chem & "\" & "Clients"
If Dir(sDossier, vbDirectory) = "" Then MkDir sDossier
With Sheets("testconversion1")'Changer le nom de la feuille
    For i = 1 To .Cells(.Rows.Count, 1).End(3).Row
        sDossier = Chem & "\" & "Clients"
        For J = 1 To 2 '.Cells(1, .Columns.Count).End(1).Column
            sDossier = sDossier & "\" & .Cells(i, J)
            If Dir(sDossier, vbDirectory) = "" Then MkDir sDossier
        Next J
        STst = sDossier
        For J = 3 To .Cells(1, .Columns.Count).End(1).Column
            sDossier = STst & "\" & .Cells(i, J)
            If Dir(sDossier, vbDirectory) = "" Then MkDir sDossier
        Next J
    Next i
End With
End Su
Cordialement
 

Aurelside

XLDnaute Nouveau
Re : Création de dossier et sous dossier depuis ligne excel csv.

Salut Efgé,

Merci infiniment. Ça fonctionne parfaitement.
Je pense que je vais vite devoir reprendre la main sur le Vba haha.

Très bonne fin de journée à toi et encore merci !
 

Discussions similaires