Worksheet_Change(ByVal Target As Range)

Bonjour à tous,
je suis novice sur VBA, j'ai des difficultés à utiliser les macros evenementielles. En fait, je ne comprends pas pourquoi lorsque je définis ma macro comme celle ci-dessous, j'active F5 et la boite de dialogue de création de la mùacro apparaît.
Aidez moi SVP!

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim KeyCells As Range

    Set KeyCells = Range("a1")

    If Not Application.Intersect(KeyCells, Range(Target.Address)) _
           Is Nothing Then

            If (Target.Value = "Complete" Or Target.Value = "On Hold") Then
                ActiveCell.EntireRow.Copy
                Worksheets("Sheet2").Activate
                i = Worksheets("Sheet2").Cells(Rows.Count, 1).End(xlUp).Row
                Worksheets("Sheet2").Cells(i + 1, 1).Select
                ActiveSheet.Paste
                Worksheets("Sheet1").Activate
                ActiveCell.EntireRow.Delete
            End If

    End If
End Sub


#StayInPeace#

2 réponses

  1. Modérateur
    Bonjour,

    Pense à attribuer à ton code la couleur syntaxique et la forme correcte avec le bouton
    <>
    ▼
    .
    0
    1. Bonjour,

      F5 ne peut été utilisee sur toutes les procedures evenementielles Worksheet.

      Votre procedure s'active seulement sur changement de valeur dans une cellule de la feuille ou vous avez mis ce code.
      0