Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2010 Positionner le curseur dans une cellule avec une liste déroulante

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

CATPLUS

XLDnaute Junior
Bonjour à tous
Voici ma requête
Dans le fichier joint, colonne A => les 26 lettres de l'alphabet
Colonne B => la liste déroulante.
Comment puis-je SVP aller dans la cellule correspondant a la demande de la liste déroulante?
Cordialement
 

Pièces jointes

Bonjour à tous
Voici ma requête
Dans le fichier joint, colonne A => les 26 lettres de l'alphabet
Colonne B => la liste déroulante.
Comment puis-je SVP aller dans la cellule correspondant a la demande de la liste déroulante?
Cordialement
Bonjour,

Une, parmi d'autre
Dans le module de la feuille
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
  If Target.Address <> "$B$1" Then Exit Sub
  Application.Goto (Cells(Application.Match(Target, [A:A], 0), 1))
End Sub
 

Pièces jointes

Bonjour le fil, CATPLUS

Test OK sur ton fichier exemple avec ce code VBA
VB:
Dim ligne&
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$B$1" Then
ligne = Application.Match([B1], [A:A], 0)
Application.Goto Cells(ligne, 1)
End If
End Sub
NB: A mettre dans le code de la feuille
(et pas dans un module standard)

EDITION
Houps désolé, pour la collision, Jacky67 😉
Ah , j'oubliais: Bonjour Jacky67
 
Re

Alors pour varier les plaisirs et pour ne pas doublonner
(comme le fait ma précédent proposition)
Une autre syntaxe qui ne fonctionne que pour l'exemple soumis 😉
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$B$1" Then
Application.Goto Cells(Range([B1] & "1").Column, 1)
End If
End Sub
 
Re

Et pendant que mon petit frichti refroidit, une autre pour la route 😉
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$B$1" Then
Application.Goto Cells((Asc([B1]) + 1) Mod 65, 1)
End If
End Sub
 
Hello Staple1600
Ou encore 🙄 🙂😇😋
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address <> "$B$1" Then Exit Sub
    Application.Goto [a:a].Find(Target)
End Sub

**Fais attention de ne pas manger froid 🥘
 
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

  • Question Question
Microsoft 365 INDEX equiv
Réponses
1
Affichages
118
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…