Problème Worksheet_Change - 2 Macros

Bonjour à tous,

Etant débutant en VBA, je me permet de solliciter votre aide afin de résoudre mon problème.

J'ai réalisé 2 macros Worksheet_Change qui marchent très bien séparément. Cependant, dès que je les mets en même temps, cela fait planter mon pc.

Je m'explique, je suis sur la feuille 3 et je cherche avec la première macro à renommer le nom de ma feuille à l'aide de la cellule C10. La seconde me permet de récupérer la valeur de la cellule F7- Feuille 1 Pour la mettre dans la cellule D19 - Feuille 3.

Voici la macro que j'ai mis sur la feuille 3 :

Private Sub Worksheet_Change(ByVal Target As Range)

'Créer un lien entre la cellule F7 de la Feuille 1 et la cellule D19 de la feuille 2

If Target.Address = "$D$19" Then

Worksheets(1).Cells(7, 6) = Target

End If

'Créer un lien entre le nom de la cellule C10 et le nom de la feuille

Dim N As Range

Set N = Intersect(Target, [C10])

If Not N Is Nothing And Not IsEmpty([C10]) Then ActiveSheet.Name = [C10]

End Sub

Et voici la macro que j'ai mis sur la feuille 1 :

Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Address = "$F$7" Then

Worksheets(3).Cells(19, 4) = Target

End If

End Sub

Le problème se trouve sur la macro de la feuille 3 (première macro ci dessus), et le bug apparaît avec le liens de la cellule D19 - Feuille 3 vers la cellule F7 Feuille 1 seulement.

Merci d'avance pour vos réponse.

Bonjour Cabrinha,

bienvenue parmi nous!

Si tu veux recevoir ta Saint-Nicolas aujourd'hui encore, il vaudrait mieux joindre ton fichier : cela faciliterait les choses pour nous.

A+

Bonjour,

il te faut geler les évènements sinon, ça joue au ping pong entre les feuilles. Dans le module de la feuille indexée 3 :

Private Sub Worksheet_Change(ByVal Target As Range)

    Dim N As Range

    'Créer un lien entre la cellule F7 de la Feuille 1 et la cellule D19 de la feuille 2

    If Target.Address = "$D$19" Then

        Application.EnableEvents = False 'gèle les évènements

        Worksheets(1).Cells(7, 6) = Target

        Application.EnableEvents = True 'les rétablis

    End If

    'Créer un lien entre le nom de la cellule C10 et le nom de la feuille

    Set N = Intersect(Target, [C10])

    If Not N Is Nothing And Not IsEmpty([C10]) Then ActiveSheet.Name = [C10]

End Sub

dans le module de la feuille indexée 1 :

Private Sub Worksheet_Change(ByVal Target As Range)

    If Target.Address = "$F$7" Then

        Application.EnableEvents = False 'gèle les évènements

        Worksheets(3).Cells(19, 4) = Target

        Application.EnableEvents = True 'les rétablis

    End If

End Sub

Salut,

Voici mon fichier.

Merci


Merci bcp Theze, ca marche nickel !!!

Tu me sauve. Encore merci.

Rechercher des sujets similaires à "probleme worksheet change macros"