Bonjour à tous,

Je suis nouveau sur ce forum et je découvre la programation VBA, et je tatonne...

J'ai fait une macro qui permet de remplir un tableau Excel (2010) à l'aide d'un UserForm. A la fin de la saisie dans ce UserForm, la macro créer un dossier ainsi que 4 sous dossiers dans celui-ci.

Lors de l'ouverture du classeur la première UserForm1 s'affiche, elle me permet de saisir une référence ainsi qu'un nom dans les deux dernières ligne vierge avec ce code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Private Sub CmbValider_Click()
Dim lgDerLig As Long
    ' Récupération de la dernière ligne saisie
    lgDerLig = Range("A" & Cells.Rows.Count).End(xlUp).Row + 1
 
    ' Récupération n° de devis
    Range("A" & lgDerLig).Value = refdevis
 
    ' Récupération du nom du client
    Range("B" & lgDerLig).Value = refclient
 
    UserForm2.Show
    Unload UserForm1
End Sub
Ce code fonctionne bien et renvoie sur la deuxième Userform2 plus détaillé contenant des CheckBox, j'ai message d'erreur sur mes Range. La macro me renvoie "La methode 'Range' de l'objet'_Global' a échoué". Voici le code en question :

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
Private Sub CommandButton1_Click()
 
' Remplissage des champs du tableau
 
    If CheckBox400S.Value = True Then
        Range("F" & lgDerLig).Value = "X"
    End If
 
    If CheckBox400K.Value = True Then
        Range("G" & lgDerLig).Value = "X"
    End If
 
    If CheckBox630S.Value = True Then
        Range("H" & lgDerLig).Value = "X"
    End If
 
    If CheckBox630K.Value = True Then
        Range("I" & lgDerLig).Value = "X"
    End If
Pourriez-vous m'aider ??? Là je sèche...

Merci d'avance