Probleme Menu Click droit

  • Initiateur de la discussion Initiateur de la discussion crefieu
  • 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 !

crefieu

XLDnaute Nouveau
Bonjour,

J'ai creer sur ma feuille excel plusieurs zones avec un menu clic droit specifique, chaque zone comprend une cellule. Tout marche bien tant que je fais le clic droit sur une seule cellule mais si je clic droit sur une colonne une ligne une cellule fusionne une plage de cellule... cela me renvoie une erreur "type mismatch"

Voila Mon code

Code:
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)

Select Case Target:
Case ThisWorkbook.Worksheets(2).Range("Maintenance"):NameBar = "NameBarMA"        
Case ThisWorkbook.Worksheets(2).Range("OperatingE"):  NameBar = "NameBarOE"
Case Else:  NameBar = ""
End Select
    
If NameBar = "" Then
Else
    Initialize (NameBar)
    Cancel = True
    CommandBars(NameBar).ShowPopup
End If
End Sub
L'erreur apparait a cette endroit:
Code:
Case ThisWorkbook.Worksheets(2).Range("Maintenance"):NameBar = "NameBarMA"
D'apres ce que je comprends le type renvoye par Target n'est pas le meme que celui du premier case donc il ne peut pas effectuer la comparaison mais pourquoi il ne passe pas au case else :??


Sinon quels sont les noms des differents types possibles pour Target???

En vous remerciant d'avance
Bonne soiree
 
Dernière édition:
Re : Probleme Menu Click droit

Bonjour,

Même commentaire que carcharodon-carcharias, sinon peut-être que tu dois valider le nombre de cellules avant d'exécuter le reste de ta macro. Exemple :

Code:
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)

If Target.Cells.Count > 1 Then Exit Sub

Select Case Target:
'la suite....

A+
 
Re : Probleme Menu Click droit

Bonsoir cc,

sinon je ne comprend pas
Code:
If NameBar = "" Then
Else
then quoi ??????
Si NameBar recoit la chaine vide alors il fait rien, s'il arrive dans le else alors sa veut dire qu'il recoit soit "NameBarMA" soit "NameBarOE"
Du coup il peut appeler la fonction initialize(NameBar) correspondante!



PS:comment fais tu pour mettre les couleurs dans ton code?
 
Re : Probleme Menu Click droit

bonsoir Grand chaman Excel,

Oups j'ai oublier de mettre mon fichier dans mon precedent post! mais bon ce n'est pas grave car grand chaman as trouver une solution a mon probleme! Grand merci donc!

Et pour le If NameBar ="" then ...
je voulais mettre quelque chose dans le genre then exit sub mais je ne savais pas comment l'ecrire!
D'une pierre deux coups comme on dit!

Merci a tous les deux


Edit : CC je ne vois pas ce qui te derange? si je n'ai rien ecris apres le then c'est pour qu'il ne fasse rien justement... Bon c'est vrai c'est pas tres propre, c'est du codage un peu a l'arrache mais que veux tu? je suis encore un debutant en vba! 😱
 
Dernière édition:
- 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

Discussions similaires

Réponses
4
Affichages
256
Réponses
12
Affichages
778
Retour