Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Code Macro pour lancer automatiquement une macro en fonction du contenu d'une cellule

builtoc

XLDnaute Nouveau
Bonjour a tous,

Je recherche le code qui va me permettre d'executer une macro quand je modifie le contenu d'une cellule.
Dans mon exemple, j'ai 2 macro qui masque (Mask_Prorata_PMSS) ou affiche (Aff_Prorata_PMSS) des colonnes (ces macros fonctionnent)
Je souhaite que lorsque je modifie la cellule E21 (Via liste déroulante: Oui; Non), l'une des 2 macro ce lance.
Dans Feuil1, je tape le code suivant, mais il ne fonctionne pas:
J'obtient le message "Erreur de compilation: Nom ambigu détecté: Worksheet_change"

Private Sub Worksheet_Change(ByVal Target As Range)
If Range("E21") = "Oui" Then
Application.Run "'Calcul des tranches.xlsx'!Aff_Prorata_PMSS"
End If
End Sub

ou

Private Sub Worksheet_Change(ByVal Target As Range)
If Range("E21") = "Non" Then
Application.Run "'Calcul des tranches.xlsx'!Mask_Prorata_PMSS"
End If
End Sub

Merci d'avance pour votre aide
 

belkacem_64

XLDnaute Junior
Salut
Essayez ce code

Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Address = Range("E21").Address Then
Select Case Target.Value
Case Is = "Oui": Aff_Prorata_PMSS
Case Is = "Non": Mask_Prorata_PMSS
End Select
End If

End Sub
 

Discussions similaires

Réponses
1
Affichages
249
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…