Zone de liste excell ?????????

olivier857 Messages postés 188 Date d'inscription mardi 21 décembre 2004 Statut Membre Dernière intervention 10 avril 2008 - 9 mai 2005 à 18:55
olivier857 Messages postés 188 Date d'inscription mardi 21 décembre 2004 Statut Membre Dernière intervention 10 avril 2008 - 10 mai 2005 à 22:33
Salut, je voudrais savoir plusieurs petitte chose sur les zones de liste d'Excel (pas les combobox de VB).

Est t'il possible de leur appliquer la propriété rowsource comme a une combobox VB ?
Est t'il possible de leur appliquée du code sur les procédure change ou exit également comme pour les combobox VB?

J'ai essayé mais j'y arrive pas, si c'est possible pouvez vous me donner un exemple.

Maintenent une question sur les combobox VB cette fois-ci.

Je n'arrive pas utiliser la proprité rowsource sur une feuille excell mais dans une userform pas de pb, pourkoi?

Voilà c'est tout.
Merci d'avance et bonne soirée.

Olivier

5 réponses

jpleroisse Messages postés 1788 Date d'inscription mardi 7 novembre 2000 Statut Membre Dernière intervention 11 mars 2006 27
9 mai 2005 à 22:22
Pour les Zones de liste Excel, je ne connais pas de code, si ce n'est pour la création par du code VBA .

Sub CreerListe()
Range("A5").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="jean, pierre, louis"
.IgnoreBlank = True
.InCellDropdown = True
.ShowInput = True
.ShowError = True
End With
End Sub

Pour les Combobox placés sur une feuille, il faut utiliser la méthode AddItem.

Private Sub ComboBox1_Change()
ActiveCell = ComboBox1.Value
ActiveCell.Select
End Sub


Private Sub ComboBox1_GotFocus()
Dim vCellule As Object
ComboBox1.Clear
For Each vCellule In Range("A1:A10")
If vCellule <> "" Then
ComboBox1.AddItem vCellule.Value
End If
Next
End Sub

Dans cet exemple, les valeurs contenues dans les cellules A1:A10 sont ajoutées dans le combobox, ensuite, si tu sélectionnes une cellules dans le feuille et que sur cliques sur le Combo, la valeur sera introduite dans cette cellule.

jpleroisse
0
valtrase Messages postés 937 Date d'inscription lundi 19 janvier 2004 Statut Membre Dernière intervention 9 mai 2022 3
10 mai 2005 à 00:29
Lut,
Si tu as tes données dans A1:A10 tu peux faire:
ListBox1.RowSource = "A1:A10"
Ou
ListBox1.RowSource = "Plage1" Si tu as nommé ta plage.

En ce qui concerne une listbox incorporée dans une feuille c'est ListFillRange que tu dois utiliser.
Pour l'évènement Change y'a pas de prob
ci-dessous un click sur un item afficheras la valeur de l'item dans le Label
Private Sub ListBox1_Change()
Label1.Caption = ListBox1.Value
End Sub
Idem pour Enter et Exit

Cordialement, Jean-Paul
______________________________________________________________________

Le Savoir n'a de valeur que s'il est partagé
0
jpleroisse Messages postés 1788 Date d'inscription mardi 7 novembre 2000 Statut Membre Dernière intervention 11 mars 2006 27
10 mai 2005 à 01:13
OK Jean-Paul, mais un Combobox placé directement sur la feuille n'a pas la propriété RowSource, Sauf s'il est sur un UserForm.

jpleroisse
0
valtrase Messages postés 937 Date d'inscription lundi 19 janvier 2004 Statut Membre Dernière intervention 9 mai 2022 3
10 mai 2005 à 18:28
Jp....Jp.....
Faut prendre le temps de lire tout le post !!

Cordialement, Jean-Paul
______________________________________________________________________

Le Savoir n'a de valeur que s'il est partagé
0

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

Posez votre question
olivier857 Messages postés 188 Date d'inscription mardi 21 décembre 2004 Statut Membre Dernière intervention 10 avril 2008
10 mai 2005 à 22:33
Ok merci bien pour vos réponse.

Le ListFillRange est effectivement bien utile pour les zone de liste excell et les combobox de vb.

Les proproété change enter et exit fonctionne bien mais que pour les combobox vb, je ne sais pas si il est possible de faire pareil pour les zonz de list d'excel. Moi je n'y arrive pas.

merci

olivier
0
Rejoignez-nous