Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.
  • Initiateur de la discussion Initiateur de la discussion MARIE
  • 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 !

M

MARIE

Guest
bonsoir le forum

je débute en vba j'aimerais avec une macro
evenementielle déclencher avec clic droit ouvrir
la feuille correspondant au référence de la colonne A c'est a dire si je clic en A1 (devis) ouvrir la feuille devis
est ce possible
merci a tous bonne soirée
 

Pièces jointes

Bonjour Marie, biensûr c'est possible, mais pourquoi faire une macro là où un lien hypertexte suffirait, en fait il ne s'agit pas d'ouvrir une feuille mais de se déplacer dessus.

C@thy
 
sinon, évidemment tu peux écrire ça :
(dans le
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean) de ta feuille


Dim val As String
If Not Intersect(Range("A1:A3"), Target) Is Nothing Then
val = ActiveCell.Value
Sheets("" & val & "").Select
End If
End sub

C@thy
 
Salut à vous tous,

Mais pourquoi se compliquer la vie ?

Il suffit de nommer (menu Insertion / Nom / Définir) "devis" la cellule A1 (ou une autre) de la feuille "devis" et puis de cliquer sur "devis" dans la liste déroulante qui s'ouvre en cliquant sur la flèche de la petite fenêtre à l'extrème gauche de la barre de formule, là où est normalement indiqué la référence de la cellule active.

Ândré.
 
Du coup, on n'a plus jamais l'affichage du menu contextuel, même si on
clique ailleurs, il faudrait peut-être refaire une macro événementielle qui,
lorsqu'on clique ailleurs qu'en col A réaffiche le menu contextuel, qu'en penses-tu???


C@thy
 
Bonsoir

Sinon pour gérer le menu contextuel ailleurs que dans la plage a1 : a3 :

Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
Cancel = True
Dim val As String
If Not Intersect(Range("A1:A3"), Target) Is Nothing Then
Sheets(ActiveCell.Value).Select
Else
Cancel = False
End If
End Sub

salut
Hervé
 
Re bonsoir le forum

Merci a tous pour vos reponses,c'est sur mon exemple vous à sembler peut etre bizare ou superflus mais ce code va rejoindre une application plus consequente et je ne maitrisait pas{Sheets("" & val & "").Select}

encore merci et bonne soiree
 
- 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

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