antoinegestion
Messages postés1Date d'inscriptionmercredi 29 novembre 2000StatutMembreDernière intervention14 octobre 2005
-
14 oct. 2005 à 01:29
joanibus
Messages postés1Date d'inscriptionlundi 13 juin 2005StatutMembreDernière intervention31 octobre 2005
-
31 oct. 2005 à 12:33
Bonjour,
Je dois remplir une liste déroulante non modifiable à partir d'une liste alphabétique de noms (+/- 120) situés dans une feuille du même classeur.
Par contre, cette liste peut être modifiée! (ajout/supression de noms)
De plus, il faut récupérer le n° de ligne du nom qui sera validé dans ma combobox
Pq? Pcque, plus loin dans le programme des résultats devront s'inscrire à côté du nom choisi....
Quel code pour faire tourner ma combo?
PS : J'ai commencé à lire VB y'a trois jour, soyez indulgent pour vos explications, suis vraiment débutant...
joanibus
Messages postés1Date d'inscriptionlundi 13 juin 2005StatutMembreDernière intervention31 octobre 2005 31 oct. 2005 à 12:33
supposons que la liste des noms se trouve sur la colonne "A" de la feuille "Noms"
en insérant la formule dans la cellule "B1" de cette meme feuille :
=NBVAL(A:A)
tu obtiens le nombre de valeurs non nulles de toute la colonne "A"
dans ton userform1:
tu crées:
un bouton nommé "CommandButton1"
une listebox nommée "Listbox1"
ensuite tu copies ce code:
Dim NombreDePersonnes As Integer 'Variable pour le nombre de personnes
Private Sub CommandButton1_Click()
MsgBox "N° de ligne : " & ListBox1.ListIndex + 1
End Sub
Private Sub UserForm_Initialize()
'pour savoir combien de lignes il faut ajouter dans ta liste box
NombreDePersonnes = Sheets("Noms").Range("B1").Value
For i = 1 To NombreDePersonnes
ListBox1.AddItem Sheets("Noms").Range("A" & i).Value
Next
End Sub