Prob de deplacement d'item dans une listbox :( (EXCEL)

nikovb Messages postés 9 Date d'inscription jeudi 11 septembre 2003 Statut Membre Dernière intervention 17 novembre 2003 - 17 nov. 2003 à 16:08
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 - 17 nov. 2003 à 17:26
Bonjour la Cie et salut le forum !

Voilà j'aimerai deplacer vers le haut un item (selectionné) dans une listbox grace à un bouton 'btn1', je ne vois pas du tout comment ecrire le code :(
Si vous pouviez m'aider svp... je suis pomé.
Merci d'avance !!!!

"" SI "je peux ecrire" alors "je peux parler" ....END ! BIPPPP 'syntax error.

12 réponses

econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 24
17 nov. 2003 à 16:24
Une form, une listbox nommée list1, un bouton nommé command1, et hop, tu copies ce code là. A toi ensuite de l'adapter à ton besoin.

************CODE*****************
Private Sub Command1_Click()
Dim s As String
s = List1.List(List1.ListIndex) 'récupère l'élément sélectionné
List1.RemoveItem 4 'l'efface
List1.AddItem s, 2 'le rajoute en deuxieme position

'Ce code recopie le ième élément et le déplace en deuxième position. Il ne procede pas au décalage des données dans la listbox
End Sub

Private Sub Form_Load()
List1.AddItem "tuiytiu"
List1.AddItem "ghgffg"
List1.AddItem "azaza"
List1.AddItem "......."
List1.AddItem "*******"
List1.AddItem "°°°°°°°"
End Sub

Manu
0
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 24
17 nov. 2003 à 16:25
oups .. sorry, un oubli :

list1.removeitem 4 doit être remplacé par

dim i as integer
....
i = list1.listindex
list1.removeitem i

Manu
0
nikovb Messages postés 9 Date d'inscription jeudi 11 septembre 2003 Statut Membre Dernière intervention 17 novembre 2003
17 nov. 2003 à 16:33
Merci a toi manu , mais comment je peux realiser un decalage comme on pe le voir dans certaines options d'application ? a moin que se ne soit qu'un 'copier-coller' d'item? comme dans ton code laissé ici !

"" SI "je peux ecrire" alors "je peux parler" ....END ! BIPPPP 'syntax error.
0
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 24
17 nov. 2003 à 16:38
Ca devrait aller beaucoup mieux comme çà :

*********************************
Private Sub Command1_Click()
Dim s As String
Dim i As Integer
i = List1.ListIndex
s = List1.List(List1.ListIndex) 'récupère l'élément sélectionné
List1.RemoveItem i 'l'efface
If i <> 0 Then
List1.AddItem s, i - 1
List1.ListIndex = i - 1
End If
End Sub

Private Sub Form_Load()
List1.AddItem "tuiytiu"
List1.AddItem "ghgffg"
List1.AddItem "azaza"
List1.AddItem "......."
List1.AddItem "*******"
List1.AddItem "°°°°°°°"
End Sub

******************************

Manu
0

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

Posez votre question
nikovb Messages postés 9 Date d'inscription jeudi 11 septembre 2003 Statut Membre Dernière intervention 17 novembre 2003
17 nov. 2003 à 16:50
J'comprend pas là :( ca me sort un 'unspecified error' à la ligne "List1.RemoveItem i " lors de l'effacement de l'item selectionner.... j peux meme pas voir si ca fonctionne correctement ;(

"" SI "je peux ecrire" alors "je peux parler" ....END ! BIPPPP 'syntax error.
0
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 24
17 nov. 2003 à 16:54
ben c la copie conforme de mon code (CTRL+C, CTRL+V)

euh ...
Je crois que c'est parce que tu n'as pas sélectionné d'item à déplacer !

Manu
0
nikovb Messages postés 9 Date d'inscription jeudi 11 septembre 2003 Statut Membre Dernière intervention 17 novembre 2003
17 nov. 2003 à 17:02
LOL sisi !!
(dis voir c un code pour vb ou vba ?) car moi c une appli vba ... merci qd meme :)
mais c bizar ....

"" SI "je peux ecrire" alors "je peux parler" ....END ! BIPPPP 'syntax error.
0
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 24
17 nov. 2003 à 17:06
Ah ah ... moi c VB.
Et çà fonctionne super bien, vu que c un code tout bête ...
je vais voir ce que çà fait sous VBA et je reviens

Manu
0
nikovb Messages postés 9 Date d'inscription jeudi 11 septembre 2003 Statut Membre Dernière intervention 17 novembre 2003
17 nov. 2003 à 17:11
g verifier de mon cote il n'y a pas de difference , y a bien la methode 'removeitem' dans vba. Ca ne pe pas venir de là.

"" SI "je peux ecrire" alors "je peux parler" ....END ! BIPPPP 'syntax error.
0
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 24
17 nov. 2003 à 17:17
Même code dans VBA (aux noms d'objets près ) et çà fonctionne très bien.
Un clic sur la form pour charger la listbox et un clic sur le bouton pour déplacer l'élément sélectionné. J'peux pas faire plus... çà marche nickel. :o|

*********************************

Private Sub CommandButton1_Click()
Dim s As String
Dim i As Integer
i = ListBox1.ListIndex
s = ListBox1.List(ListBox1.ListIndex) 'récupère l'élément sélectionné
ListBox1.RemoveItem i 'l'efface
If i <> 0 Then
ListBox1.AddItem s, i - 1
ListBox1.ListIndex = i - 1
End If
End Sub

Private Sub UserForm_Click()
ListBox1.AddItem "tuiytiu"
ListBox1.AddItem "ghgffg"
ListBox1.AddItem "azaza"
ListBox1.AddItem "......."
ListBox1.AddItem "*******"
ListBox1.AddItem "°°°°°°°"

End Sub
**********************************

Manu
0
nikovb Messages postés 9 Date d'inscription jeudi 11 septembre 2003 Statut Membre Dernière intervention 17 novembre 2003
17 nov. 2003 à 17:23
ok bon ca marche bien ! merci :) sinon g compris en fait je fais reference a un range dans une feuille excel et apparement c t ca ki foutait la merdouille , bref ! MERCI MANU c cool de ta part ...et merci pour ta grande patience ! lol

"" "Viendez sur #programmation on s'eclate comme des fous !.
0
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 24
17 nov. 2003 à 17:26
no problemo
bonne continuation

Manu
0
Rejoignez-nous