selection change imbriqué avec select case

supercrapaud

XLDnaute Occasionnel
Bonjour à vous tous,

Je reviens vers vous car là je sèche, même avec l'aide d'Excel (y m'énerrrrrrrrrve !). Voilà j'ai une feuille qui contient plusieurs listes de validation. Lorsque je change la valeur de l'une, je voudrais qu'une action ou qu'un test se déclenche.

Dans mon code (selection change) je voudrais écrire que selon le cas, si c'est la cellule A1 qui est modifiée alors... si c'est la cellule d5 est modifiée alors...

Mais voilà, je ne trouve pas les bonnes expressions à mettre ni comment ordonnancer cela. Si vous pouviez m'aider SVP. D'avance merci au pros.
 

Grand Chaman Excel

XLDnaute Impliqué
Re : selection change imbriqué avec select case

Bonjour,

Quelque chose du genre :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Count > 1 Then Exit Sub

If Target = Range("A1") Then MsgBox "Go "
If Target = Range("D1") Then MsgBox "GoGo "

End Sub

A+

Edit: bonjour David84 ;)
 

Hulk

XLDnaute Barbatruc
Re : selection change imbriqué avec select case

Hello,

Sans classeur joint et des explications plus claires, suis pas sûr d'avoir bien compris, mais essaie ce bout de code
Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)

    If Not Intersect(Target, Range("A1")) Is Nothing Then
        'Ta macro ou code
        MsgBox "Modif cellule A1"
    ElseIf Not Intersect(Target, Range("D5")) Is Nothing Then
        'Ta macro ou code
        MsgBox "Modif cellule D5"
    End If
    
End Sub
Mais je le verrais plus dans le Change de la feuille plutôt que le SelectionChange...

EDIT : Coucou Chaman le grand, encore moi... Tu es decidemment plus rapide que moi :)
 

supercrapaud

XLDnaute Occasionnel
Re : selection change imbriqué avec select case

Bonjour à tout le fil.

Je vous remercie pour cette réponse aussi rapide hier soir. Z'êtes trop forts. La solution est un mélange de tout cela :
Private Sub Worksheet_Change(ByVal target As Range)
If Not Intersect(Range("k23:k76"), target) Is Nothing Then
else:
If Not Intersect(Range("B78"), target) Is Nothing Then
end if
end sub

Je vous remercie tous pour votre aide.
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 492
Messages
2 088 936
Membres
103 987
dernier inscrit
Doctami