Ouverture différents UsF avec utilisation clic droit

  • Initiateur de la discussion Initiateur de la discussion Pat2A
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

P

Pat2A

Guest
Bonjour,
J'utilise la fonction double clic et clic droit sur une feuille Excel afin d'ouvrir un userform .
J'aimerai pouvoir ouvrir des userform différents en fonction de la valeur ou de la couleur de la cellule sur laquelle je double clique ou clique droit. Après différentes solutions essayees sans résultat probant j'ai décidé de faire appel à vous. Pensez vous que cela est possible?
Voici la macro que J'utilise:
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Booléen)
If Intersection (Range ("A01:IG1500"), Target) Is Nothing Then Exit Su
Cancel = True
Userform1.Show
Exit Sub
End Sub
Merci de votre aide
 
Dernière modification par un modérateur:
Re : Ouverture différents UsF avec utilisation clic droit

Bonsoir Pat2a,

Avec ce code, la macro ne s'exécutera que si la cellule contient MaValeur et est de la couleur MaCouleur.
VB:
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Booléen)
    If Intersection(Range("A01:IG1500"), Target) Is Nothing Or Target.Value <> Mavaleur Or Target.Interior.ColorIndex <> MaCouleur Then Exit Sub
    Cancel = True
    Userform1.Show
    Exit Sub
End Sub

A+
 
Re : Ouverture différents UsF avec utilisation clic droit

Re-bonsoir,

Par exemple comme ceci :
VB:
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Booléen)
    If Intersection(Range("A01:IG1500"), Target) Is Nothing Then Exit Sub
        Cancel = True
        If Target.Value <> Mavaleur Then
            Userform1.Show
        ElseIf Target.Interior.ColorIndex <> MaCouleur Then
            Userform2.Show
        ElseIf AutreCondition Then
            UserFormAutre.Show
        End If
    Exit Sub
End Sub

A+
 
Re : Ouverture différents UsF avec utilisation clic droit

J'ai quelques soucis avec la macro ci-dessous: Si je mets "1" dans la cellule c'est le UsF2 qui s'ouvre et si je mets "2" ou "3" c'est le UsF1 qui s'ouvre.
D'autre part si je ne mets rien ou une valeur non prévue ça bug.

Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, CancelAs Boolen)
If Intersect (Range("A1"), Target) Is Nothing Then Exit Sub
Cancel = True
If Target.Value <> 1 Then
Userform1.Show
ElseIf Target.Value <> 2 Then
Userform2.Show
ElseIf Target.Value <> 3 Then
UserForm3.Show
End If
Exit Sub
End Sub
 
Dernière modification par un modérateur:
Re : Ouverture différents UsF avec utilisation clic droit

Bonsoir Pat 2A,Bonsoir Fredoo et le Forum

Je n'ai que survolé ton post mais peut-être

If*Target.Value <> 1*Then à remplacer par If*Target.Value = 1*Then

A+
 
Dernière édition:
Re : Ouverture différents UsF avec utilisation clic droit

Re-bonsoir Pat2A,

3° post et déjà plus aucune formule de politesse ?

D'autre part, lis bien le code et tu comprendras que si tu mets des <>, cela veut dire différent. Donc, le code que tu dois avoir (je pense) est celui-ci :
VB:
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
    If Intersect(Range("A1"), Target) Is Nothing Then Exit Sub
        Cancel = True
        If Target.Value = 1 Then
            Userform1.Show
        ElseIf Target.Value = 2 Then
            Userform2.Show
        ElseIf Target.Value = 3 Then
            UserForm3.Show
        End If
    Exit Sub
End Sub

A+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Retour