Problème avec Macro qui se lance plusieurs fois

Résolu
Bonjour mes chers, j'ai vraiment un problème, ma macro qui se lance automatiquement plusieurs fois de lui meme quant j'apporte un changement à ma cellule Range("D193").

voici le code:

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range("D193")) Is Nothing Then
Call Macro1
End If
End Sub

J'ai essayé de mettre deux codes ensemble comme les deux sont pour la même feuille
Voilà le deuxième code:

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$D$2" Then
[A4].AutoFilter Field:=1, Criteria1:="=" & Target & "*"
End If
End Sub

Quant j'apporte un changement à la cellule D193, la Macro1 s'exécute plusieurs fois sans arrêt. Veuillez m'aider SVP à resoudre ce problem.

3 réponses

  1. Contributeur
    Bonjour

    essaies

    Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Target.Address = "$D$193" Then
    Application.EnableEvents = False
    Call Macro1
    Application.EnableEvents = True
    End If
    If Target.Address = "$D$2" Then
    Application.EnableEvents = False
    [A4].AutoFilter Field:=1, Criteria1:="=" & Target & "*"
    Application.EnableEvents = True
    End If
    End Sub

    et par prudence une bouée de secours
    sub reactiver_evenementielle()
    Application.EnableEvents = True
    en sub
    Michel
    0
    1. Bonjour mon cher, je viens d'essayer les deux codes. Le deux marchent sans problem. Mais ils doivent être indépendants. Le deuxième est très bon. Le premier doit lancer automatiquement la Macro1 que je vous donne:

      Sub Macro1()

      Range("D193").Select
      Selection.Copy
      Range("J193").PasteSpecial
      Application.CutCopyMode = False
      Range("K193") = Range("J193") + Range("K193")
      Range("K193").Select
      Selection.Copy
      Range("D193").PasteSpecial
      Range("D193").Select

      End Sub

      je suis vraiment très contant de votre réaction. Merci de m'aider.
      0
      1. Contributeur
        petite erreur de manip que tu aurais peut-être pu voir

        Private Sub Worksheet_Change(ByVal Target As Range)
        If Target.Address = "$D$193" Then

        Application.EnableEvents = False
        Call Macro1
        Application.EnableEvents = True
        End If
        If Target.Address = "$D$2" Then
        Application.EnableEvents = False
        [A4].AutoFilter Field:=1, Criteria1:="=" & Target & "*"
        Application.EnableEvents = True
        End If
        End Sub
        0
    2. Génial ! Génial ! Vous êtes vraiment formidables. Ca marche très bien; je vous remerci infiniment; Que le Bon dieu vous paie. Bonne journée.

      il reste mon deuxième problème que j'ai suggeré au Forum, mais pas de solution jusqu'à présent.
      0