A voir également:
- Copier listbox vers une autre listbox vba
- Vba récupérer valeur cellule ✓ - Forum VB / VBA
- Mkdir vba ✓ - Forum VB / VBA
- Excel compter cellule couleur sans vba - Guide
- Vba range avec variable ✓ - Forum VB / VBA
- Vba dépassement de capacité ✓ - Forum Excel
8 réponses
Krysstof
Messages postés
1483
Date d'inscription
mercredi 18 février 2009
Statut
Membre
Dernière intervention
23 août 2010
294
28 juin 2010 à 14:22
28 juin 2010 à 14:22
"Value" sur une list box représente uniquement la valeur sélectionnée.
tu veux copier tout le contenu (c'est a dire la liste complete)? ou juste la valeur sélectionnée ?
tu veux copier tout le contenu (c'est a dire la liste complete)? ou juste la valeur sélectionnée ?
Krysstof
Messages postés
1483
Date d'inscription
mercredi 18 février 2009
Statut
Membre
Dernière intervention
23 août 2010
294
28 juin 2010 à 14:37
28 juin 2010 à 14:37
ca copie le contenu de listbox1 dans listbox2 :
Dim i As Integer
For i = 0 To ListBox1.ListCount - 1
ListBox2.AddItem ListBox1.List(i)
Next
amuse toi bien
Dim i As Integer
For i = 0 To ListBox1.ListCount - 1
ListBox2.AddItem ListBox1.List(i)
Next
amuse toi bien
Merci, mais ca ne marche pas, j'ai écrit ca:
Private Sub CommandButton1_Click()
Dim i As Integer
For i = 0 To historiqueetm.ListBox1.ListCount - 1
Me.ListBox1.AddItem historiqueetm.ListBox1.List(i)
Next
End Sub
Car c'est 2 userforms différents.
Merci beaucoup
Private Sub CommandButton1_Click()
Dim i As Integer
For i = 0 To historiqueetm.ListBox1.ListCount - 1
Me.ListBox1.AddItem historiqueetm.ListBox1.List(i)
Next
End Sub
Car c'est 2 userforms différents.
Merci beaucoup
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Krysstof
Messages postés
1483
Date d'inscription
mercredi 18 février 2009
Statut
Membre
Dernière intervention
23 août 2010
294
28 juin 2010 à 14:58
28 juin 2010 à 14:58
ca marche pas = quoi?
un message d'erreur, ou ca ne fait rien?
sinon, "Me." n'est pas nécessaire. et comment est-ce que historiqueetm est chargée ?
un message d'erreur, ou ca ne fait rien?
sinon, "Me." n'est pas nécessaire. et comment est-ce que historiqueetm est chargée ?
Je viens d'enlever le Me, mais toujours rien.
Je n'ai pas de message d'erreur, mais rien ce se passe.
je ne comprends pas chargée comment??
Merci
Je n'ai pas de message d'erreur, mais rien ce se passe.
je ne comprends pas chargée comment??
Merci
Krysstof
Messages postés
1483
Date d'inscription
mercredi 18 février 2009
Statut
Membre
Dernière intervention
23 août 2010
294
28 juin 2010 à 15:17
28 juin 2010 à 15:17
euh, ben si ca ne fait pas de message d'erreur, cela veut dire ca fonctionne
mais ta listbox source ne contient aucune valeur, quand je demande comment est-elle chargée, je veux dire comment le contenu de la listbox est alimenté?
tous les bouton, listbox, combobox, textbox etc... sont des controles.
sur un userform excel, il faut qu'il soit initialisé (chargé, alimenté) pour pouvoir lire le contenu de ce controle.
l'avantage d'excel est qu'une fois qu'un userform est chargé, et que ses controles sont initialisé, tu peux fermer ce userform et appeler les valeurs de ce userform dans d'autre userform, mais il ne faut pas que la procédure de fermeture vide les controles, ou que l'alimentation du controle soit dynamique et dépende d'autre valeur.
rajoute
Msgbox historiqueetm.ListBox1.ListCount
en première ligne du clic du bouton
cela te fera un popup avec le nombre de ligne vue dans la listbox.
si c'est 0 ou -1 cela veut dire que la listbox n'est pas initialisée.
faudra que tu donne plus d'info sur comment tu ouvre tes userform, plus de code
mais ta listbox source ne contient aucune valeur, quand je demande comment est-elle chargée, je veux dire comment le contenu de la listbox est alimenté?
tous les bouton, listbox, combobox, textbox etc... sont des controles.
sur un userform excel, il faut qu'il soit initialisé (chargé, alimenté) pour pouvoir lire le contenu de ce controle.
l'avantage d'excel est qu'une fois qu'un userform est chargé, et que ses controles sont initialisé, tu peux fermer ce userform et appeler les valeurs de ce userform dans d'autre userform, mais il ne faut pas que la procédure de fermeture vide les controles, ou que l'alimentation du controle soit dynamique et dépende d'autre valeur.
rajoute
Msgbox historiqueetm.ListBox1.ListCount
en première ligne du clic du bouton
cela te fera un popup avec le nombre de ligne vue dans la listbox.
si c'est 0 ou -1 cela veut dire que la listbox n'est pas initialisée.
faudra que tu donne plus d'info sur comment tu ouvre tes userform, plus de code
Merci pour ces précisions,
j'ai rajouté Msgbox historiqueetm.ListBox1.ListCount
et ca m'a mis 0.
En j'ai un commandbutton sur un userform qui ouvre 3 userforms differents:
Private Sub CommandButton1_Click()
historiqueetm.Show
historiquegranulo.Show
historiquechimiques.Show
Dim i As Integer
MsgBox historiqueetm.ListBox1.ListCount
For i = 0 To historiqueetm.ListBox1.ListCount - 1
ListBox1.AddItem historiqueetm.ListBox1.List(i)
Next
End Sub
Sur ces 3 userforms, il y une listbox qui est alimentée comme ca:
Private Sub UserForm_activate()
TextBox1.Enabled = False
i = 4
If TextBox1.Value = "SIL9" Then
Do While Worksheets("analyses chimiques").Cells(3, i) <> ""
If IsNumeric(Worksheets("analyses chimiques").Cells(3, i).Value) Then
ListBox1.AddItem Worksheets("analyses chimiques").Cells(2, i).Value
End If
i = i + 1
Loop
End If
ca repeté environ 70 fois et ca ca fonctionne impec
End Sub
Au départ je n'avais pas fait 3 userforms différents mais ca écrivait direct dans mes listbox, mais à la fin ca m'a dit procédure trop longue c'est pourquoi je suis arrivé à 3 userforms différentes.
et en fait je veux que les données de mes 3 userforms soit dans mes 3 listbox du userforms du départ etca m'arrangerai si ces 3 userforms n'apparaissaient pas.
J'espère que j'ai été claire ...
Merci de ta compréhension
j'ai rajouté Msgbox historiqueetm.ListBox1.ListCount
et ca m'a mis 0.
En j'ai un commandbutton sur un userform qui ouvre 3 userforms differents:
Private Sub CommandButton1_Click()
historiqueetm.Show
historiquegranulo.Show
historiquechimiques.Show
Dim i As Integer
MsgBox historiqueetm.ListBox1.ListCount
For i = 0 To historiqueetm.ListBox1.ListCount - 1
ListBox1.AddItem historiqueetm.ListBox1.List(i)
Next
End Sub
Sur ces 3 userforms, il y une listbox qui est alimentée comme ca:
Private Sub UserForm_activate()
TextBox1.Enabled = False
i = 4
If TextBox1.Value = "SIL9" Then
Do While Worksheets("analyses chimiques").Cells(3, i) <> ""
If IsNumeric(Worksheets("analyses chimiques").Cells(3, i).Value) Then
ListBox1.AddItem Worksheets("analyses chimiques").Cells(2, i).Value
End If
i = i + 1
Loop
End If
ca repeté environ 70 fois et ca ca fonctionne impec
End Sub
Au départ je n'avais pas fait 3 userforms différents mais ca écrivait direct dans mes listbox, mais à la fin ca m'a dit procédure trop longue c'est pourquoi je suis arrivé à 3 userforms différentes.
et en fait je veux que les données de mes 3 userforms soit dans mes 3 listbox du userforms du départ etca m'arrangerai si ces 3 userforms n'apparaissaient pas.
J'espère que j'ai été claire ...
Merci de ta compréhension