Salut,
Oui c'est ça Au lieu de supprimer, tu peux simplement passer en commentaire en ajoutant une apostrophe en début de ligne... Au cas où ça t'intéresserait plus tard !
Sinon, le Select Case est vraiment intéressant quand on a plein de valeurs possibles, si tu n'en as qu'une, mieux vaut utiliser :
1 2 3
| If Target.Text = "oui photograveur" Then
MsgBox "Vous avez choisi photograveur"
End If |
Qui peut s'écrire en une seule ligne :
If Target.Text = "oui photograveur" Then MsgBox "Vous avez choisi photograveur"
plus besoin du End If dans ce cas-là.
Concernant le fait que cela ne se lance pas... Vérifie que tu es bien dans la bonne page. Concernant la plage, il faut prendre uniquement la cellule dans laquelle le photograveur est !
Target est la cellule que tu as modifiée.. Si tu prends une plage de cellules comme adresse de référence, ce que tu as fait, alors ça ne marchera jamais car tu compares l'adresse d'UNE cellule (liste déroulante = une cellule modifiée à la fois) à l'adresse d'une plage.
Ce que tu peux faire, c'est vérifier que la cellule est bien dans une plage à l'aide de la fonction intersect(Plage1,Plage2) qui te donne les cellules en commun entre les 2 plages. Donc :
1 2 3
| If Not Intersect(Target, Range("Q21:Q30")) Is Nothing Then 'Si ce n'est pas rien, c'est qu'il y a au moins une cellule en commun entre celle modifiée et la plage de référence donc c'est bon
If Target.Text = "oui photograveur" Then MsgBox "Vous avez choisi photograveur"
End If |
Devrait faire l'affaire
Partager