Bonjour a tous,

J'ai un probleme qui a mes yeux est assez incomprehensible. Et j'espere que vous allez m'aider parce que la, je donne ma langue au chat.

Je suis sur un projet dans lequel j'utilise un userform pour remplir plusieurs de feuilles d'un meme classeur.
En gros, j'ai deux feuilles : StaffEvaluation et Training.
Je demande a l'utilisateur de remplir dans l'userform un certain nombre de donnees que j'insere apres dans les deux feuilles, a la fin.

Voici mon code (mon probleme est en note rouge dans le 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
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92

Private Sub CommandButton2_Click()

'Deactivate the macro event of "Staff Evaluation" and "Training"
    Application.EnableEvents = False


    Dim i As Integer, j As Integer
    Dim macrosheet As Worksheet
    Set macrosheet = Workbooks("Succession plan").Worksheets("for macro")

'REMPLIT LA FEUILLE "STAFF EVALUATION"
    
    'Trouve la derniere ligne de la feuille
    Dim StaffEvaluation As Worksheet
    Set StaffEvaluation = Workbooks("Succession plan").Worksheets("Staff Evaluation")
    i = StaffEvaluation.Range("A65536").End(xlUp).Row + 1
    
    'Remplit la derniere ligne avec les donnees de l'userform
    With StaffEvaluation
        .Range("B" & i).Value = "0pen"
        .Range("C" & i).Value = "0pen"
        If ComboBox1 <> "Other" Then
            .Range("E" & i).Value = ComboBox1
        Else
            .Range("E" & i).Value = TextBox7
            j = macrosheet.Range("A65536").End(xlUp).Row
            macrosheet.Range("A" & j).Insert Shift:=xlDown
            macrosheet.Range("A" & j).Value = TextBox7
        End If
        .Range("G" & i).Value = TextBox1
        .Range("H" & i).Value = TextBox2
        .Range("L" & i).Value = TextBox3
    End With
    
    'Met en forme la ligne inserer
    StaffEvaluation.Rows(i).RowHeight = 25.5
    With StaffEvaluation.Rows(i)
        .HorizontalAlignment = xlCenter
        .VerticalAlignment = xlCenter
    End With
    With StaffEvaluation.Range(Cells(i, 7), Cells(i, 8))
        .HorizontalAlignment = xlGeneral
        .VerticalAlignment = xlCenter
    End With

    'Jusque la, tout semble fonctionner correctement. Mais la
ou cela devient incomprehensible, c'est que je fais exactement la meme
chose pour la feuille Training et j'ai une erreur 1004. Voici la suite
immediate du code :

'REMPLIT LA FEUILLE "TRAINING"
    
    'Trouve la derniere ligne
    Dim Training As Worksheet
    Set Training = Workbooks("Succession plan").Worksheets("Training")
    i = Training.Range("A65536").End(xlUp).Row + 1
    
    'Remplit la derniere ligne de la feuille avec les donnees de l'userform
    With Training
        .Range("A" & i).Value = "0pen"
        .Range("B" & i).Value = "0pen"
        .Range("C" & i).Value = ComboBox1
        .Range("D" & i).Value = TextBox1
        .Range("E" & i).Value = TextBox2
        If ComboBox2 <> "Other" Then
            .Range("I" & i).Value = ComboBox2
        Else
            .Range("I" & i).Value = TextBox6
            j = macrosheet.Range("C65536").End(xlUp).Row
            macrosheet.Range("C" & j).Insert Shift:=xlDown
            macrosheet.Range("C" & j).Value = TextBox6
        End If
    End With
    
    'Mise en forme de la feuille
    Training.Rows(i).RowHeight = 25.5
    With Training.Rows(i)
        .HorizontalAlignment = xlCenter
        .VerticalAlignment = xlCenter
    End With
   'ICI EST L'ERREUR 1004 DISANT:
    METHOD 'RANGE' OF OBJECT'_WORKSHEET' FAILED
    With Training.Range(Cells(i, 7), Cells(i, 8))
        .HorizontalAlignment = xlGeneral
        .VerticalAlignment = xlCenter
    End With
    With Training.Rows.Font
        .Name = "Arial"
        .Size = 10
    End With
Pourquoi, cette erreur 1004 (je ne comprends meme pas ce que veut dire le message d'erreur) alors que j'ai le meme code avant pour la feuille StaffEvaluation et que je n'ai pas ce probleme ?

Votre aide me sera d'un grand secours.

Merci d'avance,

Pubbins.