Salut les amis!!!
Voila j'ai développé un mastermind en vb6 et ma fonction de vérification
se plante au 2 eme tour.
elle me dit " run tume error 13 type mismatch"

alors que la première vérification se passe impécablement
voici mon 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
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
For i = a To a + 3
    If pion(i).FillColor = couleurpc(i - a) Then ' Si la couleur du pion est égale à la couleur du pc alors
   ' MsgBox (i)
         If i = 0 Then
             valeur0 = 1
         End If
         If i = 1 Then
             valeur1 = 1
         End If
         If i = 2 Then
             valeur2 = 1
         End If
         If i = 3 Then
             valeur3 = 1
         End If
        
       correct(x).FillColor = 16777215           ' Définit la couleur d'un pion de correction en blanc
       correct(x).Visible = True                 ' Affiche le pion de correction
       x = x + 1                                 ' Incrémente la variable x afin de passer au pion de correction suivant
       compteur = compteur + 1                   ' Incrémente le compteur
    End If
Next i


'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
' Controle les bonnes couleurs mais mal placé

   Dim k As Integer 'variable qui sert pour l'index des pions de corrections
  z = 0 + z
   
   If valeur0 = 0 Then
   k = z
     
        If valeur1 = 0 Then
            If pion(k).FillColor = couleurpc(k + 1) Then
                correct(x).FillColor = 0                        'définit la couleur du pion de correction en noir
                correct(x).Visible = True                        'affiche le pion de correction
                x = x + 1
            End If
        End If
            
        If valeur2 = 0 Then
            If pion(k).FillColor = couleurpc(k + 2) Then
                correct(x).FillColor = 0                        'définit la couleur du pion de correction en noir
                correct(x).Visible = True                       'affiche le pion de correction
                x = x + 1
            End If
        End If
        
        If valeur3 = 0 Then
            If pion(k).FillColor = couleurpc(k + 3) Then
                correct(x).FillColor = 0                        'définit la couleur du pion de correction en noir
                correct(x).Visible = True                       'affiche le pion de correction
                x = x + 1
            End If
        End If
   End If
  
   If valeur1 = 0 Then
   k = z + 1
        If valeur0 = 0 Then
            If pion(k).FillColor = couleurpc(k - 1) Then
                correct(x).FillColor = 0                        'définit la couleur du pion de correction en noir
                correct(x).Visible = True                       'affiche le pion de correction
                x = x + 1
            End If
        End If
            
        If valeur2 = 0 Then
            If pion(k).FillColor = couleurpc(k + 1) Then
                correct(x).FillColor = 0                        'définit la couleur du pion de correction en noir
                correct(x).Visible = True                       'affiche le pion de correction
                x = x + 1
            End If
        End If
        
        If valeur3 = 0 Then
            If pion(k).FillColor = couleurpc(k + 2) Then
                correct(x).FillColor = 0                        'définit la couleur du pion de correction en noir
                correct(x).Visible = True                       'affiche le pion de correction
                x = x + 1
            End If
        End If
    End If
   
    If valeur2 = 0 Then
        k = z + 2
        If valeur0 = 0 Then
            If pion(k).FillColor = couleurpc(k - 2) Then
                correct(x).FillColor = 0                        'définit la couleur du pion de correction en noir
                correct(x).Visible = True                       'affiche le pion de correction
                x = x + 1
            End If
        End If
            
        If valeur1 = 0 Then
            If pion(k).FillColor = couleurpc(k - 1) Then
                correct(x).FillColor = 0                        'définit la couleur du pion de correction en noir
                correct(x).Visible = True                       'affiche le pion de correction
                x = x + 1
            End If
        End If
        
        If valeur3 = 0 Then
            If pion(k).FillColor = couleurpc(k + 1) Then
                correct(x).FillColor = 0                        'définit la couleur du pion de correction en noir
                correct(x).Visible = True                       'affiche le pion de correction
                x = x + 1
            End If
        End If
   End If
   
    If valeur3 = 0 Then
    k = z + 3
        If valeur0 = 0 Then
            If pion(k).FillColor = couleurpc(k - 3) Then
                correct(x).FillColor = 0                        'définit la couleur du pion de correction en noir
                correct(x).Visible = True                       'affiche le pion de correction
                x = x + 1
            End If
        End If
            
        If valeur1 = 0 Then
            If pion(k).FillColor = couleurpc(k - 2) Then
                correct(x).FillColor = 0                        'définit la couleur du pion de correction en noir
                correct(x).Visible = True                       'affiche le pion de correction
                x = x + 1
            End If
        End If
        
        If valeur2 = 0 Then
            If pion(k).FillColor = couleurpc(k - 1) Then
                correct(x).FillColor = 0                        'définit la couleur du pion de correction en noir
                correct(x).Visible = True                       'affiche le pion de correction
                x = x + 1
            End If
        End If
End If

 z = z + 4
j'ai mis en vert l'endroit souligné par le débugger lors du problème.
aidez moi s'il vous plait !! merci d'avance