Variable ignorée

Bonjour à tous,

Avant de brèveter mon application, j'aimerais vous soumettre un probléme bizarre.

Dans ce code qui fait partie de la macro pointage en module5, excel ignore ma variable last1 à 2, et me sort en msgbox.

image
'"""""""""""""""""""""""""""""""""
' compteurs manquants et doublons.
' Ecritures rappros par classe
'"""""""""""""""""""""""""""""""""
'recherche debut & fin classe
'décalage avec liste plus longue à gauche et vide à droite (lig 17)
last1 = 2 'ignoré = probléme
drn1 = ws6.Range("B" & Rows.Count).End(xlUp).Row '3eme liste
For i = 2 To drn1 + 50
        If ws6.Range("A" & i) <> ws6.Range("A" & i + 1) And ws6.Range("H" & i) = "" Then
                clas1 = ws6.Range("A" & i)
                last2 = i
                For j = i To i - 25 Step -1
                    If ws6.Range("H" & j - 1) <> "" Then
                        decal1 = j - 1
                        decal2 = last2 - decal1
                        Exit For
                    End If
                Next j
               'doublons en rouge
MsgBox "last1 " & last1 & " last2 " & last2
                    'If i = 17 Then last1 = 2  'MsgBox last1 pour résoudre probléme last1 = 433

Merci de votre aide

bonjour,

Non non il n'est pas ignoré : Tout de suite après la déclaration = 2 tu as une boucle If :

last1 = 2 'ignoré = probléme
drn1 = ws6.Range("B" & Rows.Count).End(xlUp).Row '3eme liste
For i = 2 To drn1 + 50
        If ws6.Rang...

Quand il rentre dans la boucle VBA constate que le If est False...

... Then il va voir à Else un peu plus bas (sans passer par MsBox : Oeuf corse !) et c'est là qu'il modifie ta variable.

A+

Merci Galopin,

effectivement, je me suis aperçu que le 1er if et le 3éme étaient semblables, et j'ai pu trouvé corrigé mon erreur.

merci bien

Rechercher des sujets similaires à "variable ignoree"