[Excel - UserForm] ComboBox

Résolu
cs_makakdef Messages postés 50 Date d'inscription mercredi 28 mars 2007 Statut Membre Dernière intervention 31 août 2007 - 8 août 2007 à 08:57
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 - 8 août 2007 à 10:43
Bonjour a tous et a toutes,

J'ai une petite question, un petit problème qui m'embete.
Alors je suis dans Visual Basic Editor, et j'aimerais faire une ou deux choses:

- Premièrement: Ajouter des valeurs de 0 à 9 dans un combo box
- Deuxièmement: Ne pas pouvoir changer, voir, mettre autre chose que ces chiffres.

Voila c'est tout, cela ne doit pas etre très difficile, mais je ne sais pas comment faire.

Si vous pouvez, et vous avez envie de m'aider, et bien volontier!

Lucien

6 réponses

jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
8 août 2007 à 09:54
Salut,
- ajouter un Combo appelé Combo1 a un UserForm
- Mettre sa propriété Style à 2 - frmStyleDropDownList
- Coller ce code pour ajouter les valeurs.

Private Sub UserForm_Activate()
Dim i As Integer
   For i = 0 To 9
       Call ComboBox1.AddItem(CStr(i))
   Next
   ComboBox1.ListIndex = 0
End Sub , ----
[code.aspx?ID=41455 By Renfield]
Pas très compliqué... un peu de recherche et tu aurais trouvé

@+: Ju£i?n
Pensez: Réponse acceptée
3
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
8 août 2007 à 09:54
re,
correction
- ajouter un Combo appelé ComboBox1 a un UserForm
@+: Ju£i?n
Pensez: Réponse acceptée
0
cs_makakdef Messages postés 50 Date d'inscription mercredi 28 mars 2007 Statut Membre Dernière intervention 31 août 2007
8 août 2007 à 10:29
Merci beaucoup, problème résolu ;-]

PS: a quoi sert le (CStr(i)) ?

Lucien
0
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
8 août 2007 à 10:34
Re,
i est un entier Cstr() le convertit en chaine de caractere.
=> Cstr est ici Optionnel mais c'est toujours "mieux" de le mettre

@+: Ju£i?n
Pensez: Réponse acceptée
0

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

Posez votre question
cs_makakdef Messages postés 50 Date d'inscription mercredi 28 mars 2007 Statut Membre Dernière intervention 31 août 2007
8 août 2007 à 10:38
Re,

Ok merci donc

Call
ComboBox1.AddItem



(i) aurait suffit?

Et le Cstr() est utile si l'on fait par exemple



For i = a To z


ou bien?

Lucien
0
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
8 août 2007 à 10:43
Salut,
En règle générale VBA arrive à faire un convertion d'un entier vers un String.

Mais il est plus "propre" de lui spécifié directement par le code avec CSTR()

For i = a To z: non car ici a et z doivent etre de type Numerique et non String
@+: Ju£i?n
Pensez: Réponse acceptée
0
Rejoignez-nous