Bonjour,

Je tente de faire une macro toute bête qui me permet lors d'un changement d'état dans une cellule de déplacer la ligne dans un onglet "Archive".
Ma macro a l'air de fonctionner à peu près sauf qu'au lieu de m'insérer la ligne copiée en ligne 5 de l'onglet archive, à chaque fois que je relance la macro il me la décale de 4 lignes vers le bas (coller en ligne 16 puis 20 puis 24,....), je ne vois pas pourquoi....

Si vous avez une explication je suis preneur (j'ai enlevé le "Shift:=xlDown" pensant que ça pouvait venir de là mais ça change rien)

D'ailleurs le delete non plus ne marche pas mais j'ai pas creusé encore le pourquoi


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
Private Sub Worksheet_Change(ByVal Target As Range)
 
nuColonneResultat = 6
 
'   Si un changement est détecté en colonne nuColonneResultat
    If Target.Column = nuColonneResultat Then
        ' Si la ligne est à archiver
        If Target.Value = "ARCHIVE" Then
        ' Déplacer la ligne dans l'onglet archive
           Rows(Target.Row).Cut
           Sheets("archivage").Select
           Selection.Rows("5:5").Select
           Selection.Insert
           'Selection.Insert Shift:=xlDown
           Sheets("SUIVI").Select
           Rows(Target.Row).Delete
           'Selection.Delete Shift:=xlUp
        End If
    End If
 
End Sub
Merci à vous