XL pour MAC Cellules sélectionnées automatiquement après avoir choisi un élément dans une liste de choix

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

Valter

XLDnaute Occasionnel
Bonjour le forum,

Comme dit dans le titre, je me demande s' il est possible de sélectionner automatiquement la cellule suivante après avoir choisi un élément dans une liste de choix, ceci pour faciliter las saisie .... je joins un petit fichier d'exemple

Merci ....
 

Pièces jointes

Bonsoir Valter,
Avec une petite procédure VBA :
VB:
Sub Worksheet_Change(ByVal Target As Range)
    If Target.Count > 1 Then Exit Sub
    ValA = Target.Address
    If ValA = "$E$6" Then Range("$G$6").Select
    If ValA = "$G$6" Then Range("$I$6").Select
End Sub
Par contre il vous faut autoriser les macros.
 

Pièces jointes

Bonsoir Valter, sylvanu,

A placer dans le code de la feuille (clic droit sur l'onglet et Visualiser le code) :
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [E6,G6]) Is Nothing Or Target(1) = "" Then Exit Sub
On Error Resume Next
[E6,G6,I6].Find("", [I6], xlValues).Select
End Sub
A+
 

Pièces jointes

Merci job75 et sylvanou, cela fonctionne parfaitement, mais une chose que je n'ai pas pensé de dire de suite est que il faut que cela fonctionne sur une centaine de lignes, en faisant recopier vers le bas, cela ne fonctionne plus... comment modifier le code pour que cela fonctionne sur une centaine de lignes ?
 
Bonsoir Valter, Job,
La ça marche sur toutes cellules des colonnes E G I
VB:
Sub Worksheet_Change(ByVal Target As Range)
    If Target.Count > 1 Then Exit Sub
    If Target.Column = 5 Then Cells(Target.Row, 2 + Target.Column).Select
    If Target.Column = 7 Then Cells(Target.Row, 2 + Target.Column).Select
End Sub
 

Pièces jointes

Même méthode qu'au post #3, fichier (2) et la macro :
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target(1), [E6:E1000,G6:G1000]) Is Nothing Or Target(1) = "" Then Exit Sub
On Error Resume Next
Intersect(Target(1).EntireRow, [E6:E1000,G6:G1000,I6:I1000]).Find("", Intersect(Target(1).EntireRow, [I6:I1000]), xlValues).Select
End Sub
Adaptez la dernière ligne 1000.
 

Pièces jointes

- 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

Retour