tab index / ordre de tabulation

mmaatthh

XLDnaute Nouveau
Bonjour les gens du forum,
Voici mon intérogation du jour. Grace aux recherches sur ce site j,ai trouvé comment naviguer d'un combobox à l'autre grace à tabindex et ordre de tabulation. Le problème c'est que je ne peux passer de la théorie à la pratique. J'utilise Excel pour MAC, c'est peut-être cela le problème? Sur mon user j'ai 6 combobox lors de l'une de mes tentatives je pouvais naviguer du premier au dernier grace à la touche tab et du dernier au premier avec shift+tab. Il m'était impossible de passer via ceux entre les deux. Dans d'audres essais le curseur ne se déplassait même pas!

Merci de m'aider

MMAATTHH
 

Pièces jointes

  • TABULATION.xls
    31.5 KB · Affichages: 69
  • TABULATION.xls
    31.5 KB · Affichages: 75
  • TABULATION.xls
    31.5 KB · Affichages: 79

jeanpierre

Nous a quitté
Repose en paix
Re : tab index / ordre de tabulation

Bonjour mmaatthh, c'est ton ccllaavviieerr qui m.... ou quoi...

Lorsque tu es sur ton USF, revois une à une chaque combo... et dans TabIndex, tu les renommes une à une... première 1, deuxième 2, etc...

Ce dans Propriétés... par affichage....

A te lire, si problème et si solution aussi.

Jean-Pierre
 

JeanMarie

XLDnaute Barbatruc
Re : tab index / ordre de tabulation

Bonjour mmaatthh, Jeanpierre

Sans pouvoir résoudre ton problème.

Il y a plus simple pour changer la valeur dans la propriété TabIndex pour chaque Champ de ton userform. C'est de faire un clique droit sur le fond de l'userform et de cliquer sur le menu contextuel la ligne "ordre de tabulation", on obtient une boîte de dialogue, et en sélectionnant une ligne, on peut à l'aide des bouton "descendre" "monter", changer l'ordre des objets tabulés.
Petit correctif par rapport à la réponse de JeanPierre, la valeur d'index dans le tableau d'ordre de tabulation commence à la valeur 0 et non 1. Ce qui veut dire première 0, deuxième 1, troisième 2, etc.

Pour essayer de résoudre ton problème, peux-tu indiquer la version d'office que tu possèdes, Merci. Perso, j'ai la version 11.3.7, et j'ai le même problème.

@+Jean-Marie
 

jeanpierre

Nous a quitté
Repose en paix
Re : tab index / ordre de tabulation

Bonjour Jean-Marie,

Oui, nous sommes d'accord mais j'étais resté sur une logique simple, 1, 2, 3 pour ne pas perturber...

Par contre, ton astuce pour modifier par clic droit, je la retiens, même si je n'en ai que peu besoin.

Bon dimanche.

Jean-Pierre
 

mmaatthh

XLDnaute Nouveau
Re : tab index / ordre de tabulation

Jean-Pierre et Jean-Marie, merci pour vos réponses

Je pense que je fais les actions correctement et que tout devrait fonctionner.
Portant le curseur est bien immobile dans le combobox initialement sélectionné. Ma version Office 2004 est 11.3.6

Si d'autre idée vous viennent, elles sont les bienvenues
Merci MMaatthh
 

Pièces jointes

  • TABULATION.xls
    31.5 KB · Affichages: 65
  • TABULATION.xls
    31.5 KB · Affichages: 73
  • TABULATION.xls
    31.5 KB · Affichages: 74

JeanMarie

XLDnaute Barbatruc
Re : tab index / ordre de tabulation

Bonjour

Ton problème est lié à la gestion des événements qui sont différents entre office Mac et office PC.

La frappe de la touche [tab] dans la combobox (celle qui a le focus), déclenche correctement le changement d'objet. Après, je ne suis pas certain, que l'objet suivant reçoive et accepte le focus.
En regardant les événements "Enter" et "Exit", de chaque objet, on peut voir qu'il y a un bouclage, et le retour à l'objet qui a réellement le focus, qui se trouve être celui qui avait le focus.

Enter se produit avant qu'un contrôle ne reçoive réellement le focus d'un contrôle de la même feuille. Exit se produit immédiatement avant qu'un contrôle ne perde le focus au profit d'un autre contrôle de la même feuille.

En mettant ce code dans la feuille "code de l'userform", tu pourras comprendre ce qui se passe.
Code:
Private Sub ComboBox1_Enter()
MsgBox "focus entre dans la combobox1"
End Sub

Private Sub ComboBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
MsgBox "focus sort de la combobox1"
End Sub

Private Sub ComboBox2_Enter()
ComboBox2.SetFocus
MsgBox "focus entre dans la combobox2"
End Sub

Private Sub ComboBox2_Exit(ByVal Cancel As MSForms.ReturnBoolean)
MsgBox "focus sort de la combobox2"
End Sub

Private Sub ComboBox3_Enter()
MsgBox "focus entre dans la combobox3"
End Sub

Private Sub ComboBox3_Exit(ByVal Cancel As MSForms.ReturnBoolean)
MsgBox "focus sort de la combobox3"
End Sub

Private Sub UserForm_Click()

End Sub

J'ai essayé de forcer le basculement de focus entre chaque combobox, par Combobox2.setfocus, mais cela ne fonctionne pas.

Je suis désolé, de ne pouvoir t'aider plus, Si ce n'est, que de poser ton problème sur le forum de mactopia (c'est le forum microsoft d'office mac).

@+Jean-Marie
 

Discussions similaires

Statistiques des forums

Discussions
312 213
Messages
2 086 307
Membres
103 174
dernier inscrit
OBUTT