Bonjour à tous.
Cela fait un certain temps que je n'ai pas eu l'occasion de faire du VBA et je suis rouillé.

J'ai copié le code de SilkyRoad (que je remecie au passage) situé dans la FAQ d'excel.

J'ai l'erreur "Type d'argument ByRef incompatible".

Dans ma feuille Excel, la cellule [C_Rep_Racine] contient G:\T12021\2021_Documentation et feuillets des clients

Cela fonctionne si :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
CreationRepertoire "G:\T12021\2021_Documentation et feuillets des clients", Le_Nom_Du_Sous_Rep
J'aimerais que la racine soit récupéré dans une variable afin de ne pas aller dans le code chaque fois que le répertoire changera.

Est-ce possible ? Merci à l'avance

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
 
Sub TestRep()
 
Dim Le_rep_A_Ajouter, Le_Nom_Du_Sous_Rep As String
 
    Le_rep_A_Ajouter = [C_Rep_Racine]
    Le_Nom_Du_Sous_Rep = [Q_Nom_Prénom]
 
    'CreationRepertoire "G:\T12021\2021_Documentation et feuillets des clients", Le_Nom_Du_Sous_Rep
    CreationRepertoire Le_rep_A_Ajouter, Le_Nom_Du_Sous_Rep
End Sub
 
Sub CreationRepertoire(DossierParent As String, NomRep As String)
    Dim Chemin As String
 
    'Vérifie si le répertoire existe.
    If Dir(DossierParent, vbDirectory + vbHidden) <> "" Then
        'Vérifie que le dossier à créer n'existe pas déjà dans le répertoire
        If Dir(DossierParent & "\" & NomRep, vbDirectory + vbHidden) = "" Then _
            MkDir DossierParent & "\" & NomRep
    End If
End Sub