Combobox

Boulgor Messages postés 24 Date d'inscription mardi 14 avril 2009 Statut Membre Dernière intervention 4 avril 2013 - 14 avril 2009 à 11:06
Calade Messages postés 1207 Date d'inscription dimanche 20 avril 2003 Statut Membre Dernière intervention 4 juin 2016 - 14 avril 2009 à 14:52
Bonjour,
tout d'abord excusez moi si je me suis trompé de rubrique mais y en un sacré paquet^^.
J'explique mon problème:
je suis entrain de créer un fichier Excel très simple proposant, sur la première page, une navigation sur les autres pages du document via une Combobox.
Sur cette Combobox j'ai deux soucis:
quand je rouvre le fichier Excel, le nom des feuilles n'apparait plus dans la boite malgré que le code soit toujours présent.
ensuite, le problème des doublons; j'ai eu beau chercher à droite et à gauche je n'arrive pas à m'en dépatouiller.
Le code est le suivant:

Private Sub ComboBox1_Change()

Combobox1.AddItem Sheets("nom feuille1").Name
Combobox1.AddItem Sheets("nom feuille2").Name

End Sub

Donc voila rien de compliqué ^^. Mais si quelqu'un peut me donner un code qui permette d'éliminer les doublons en fonction de ce que j'ai tapé ainsi que d'expliquer l'éventuel problème de rafraichissement je serais bien dépanné.

Voila merci d'avance.

6 réponses

Genildf Messages postés 270 Date d'inscription lundi 12 janvier 2009 Statut Membre Dernière intervention 30 décembre 2015 1
14 avril 2009 à 11:24
Il faudrai pas sa dans le change plsutot dans le click

Essaye sa

Private Sub ComboBox1_Click()
combobox1.clear

Combobox1.AddItem Sheets("nom feuille1").Name
Combobox1.AddItem Sheets("nom feuille2").Name

End Sub

Sinon isi sa donne rien met plutôt les numéros de sheets

Combobox1.AddItem Sheets(1).Name

Combobox1.AddItem Sheets(2).Name
0
Boulgor Messages postés 24 Date d'inscription mardi 14 avril 2009 Statut Membre Dernière intervention 4 avril 2013
14 avril 2009 à 11:32
Merci pour la réponse rapide;
Je viens juste de tester ce que tu m'as dit.
Ce qui se passe si je met le Clear pour la combobox, dès que je vais sur le menu déroulant et que je sélectionner une page, sa efface la sélection^^.
En fait il faudrait que je puisse sélectionner une page dans le menu déroulant, cliquez sur mon bouton qui amène l'utilisateur à la page et qu'après sa, la clearbox se nettoie de sa sélection pour éviter les doublons.
0
Calade Messages postés 1207 Date d'inscription dimanche 20 avril 2003 Statut Membre Dernière intervention 4 juin 2016 10
14 avril 2009 à 11:38
Bonjour,

Pour peupler ta combo à l'ouverture, il faut mettre ton code


Combobox1.AddItem Sheets(1).Name
Combobox1.AddItem Sheets(2).Name


à l'ouverture de ta feuille, sinon ta combo ne sera jamais peuplé par défaut.

Ensuite pour voir les doublons, il te faut itérer parmi tous les éléments du combo pour voir si certains sont en double






Calade
0
Boulgor Messages postés 24 Date d'inscription mardi 14 avril 2009 Statut Membre Dernière intervention 4 avril 2013
14 avril 2009 à 11:43
C'est bon j'ai trouvé une solution peut être pas très rudimentaire mais qui pour l'instant fonctionne:
Sa c'est la code pour la combobox:
Private Sub ComboBox1_Click()

Combobox1.AddItem Sheets("nom feuille1").Name
Combobox1.AddItem Sheets("nom feuille2").Name

End Sub

Et voila le code du bouton intitulé "Go" qui amène l'utilisateur à la sélection; je me sert du code pour une fois la sélection faites nettoyer la combobox puis réécrire les données à l'intérieur:

Private Sub CommandButton1_Click()

If Combobox1.Text = "" Then
MsgBox ("Choisissez une feuille"), vbInformation, "blabla"
Else
nom = Combobox1.Text
Sheets(nom).Select

End If

Combobox1.Clear
Combobox1.AddItem Sheets("nom feuille1").Name
Combobox1.AddItem Sheets("nom feuille2").Name

Dites moi ce que vous en pensez ^^
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Boulgor Messages postés 24 Date d'inscription mardi 14 avril 2009 Statut Membre Dernière intervention 4 avril 2013
14 avril 2009 à 12:01
Bon voila le problème des doublons est réglé même si c"est pas très jolie^^.
Maintenant le problème de l'initialisation automatique des Combobox.
J'en ai trois différents sur la page de mon menu, quand je rouvre le fichier, elle ne sont pas actives; au dessus Calade a bien essayé de me répondre, mais j'avoue ne pas avoir véritablement compris, donc si qq1 peut me dire quoi mettre et ou se serait fantastique.
Le code des trois combobox est toujours identique à celui donné au dessus.
0
Calade Messages postés 1207 Date d'inscription dimanche 20 avril 2003 Statut Membre Dernière intervention 4 juin 2016 10
14 avril 2009 à 14:52
Bonjour,

Tu mets le code servant à peupler ta combo dans l'évènement Workshhet_Activate() de ton onglet. puis dans l'évènement Workbook_Open() (ouverture de ton classeur) tu sélectionnes l'onglet contenant la combo pour être certain qu'il soit ouvert en premier.



Calade
0
Rejoignez-nous