For r = ListView1.ListItems.Count - 1 To 0 Step -1 i = 0 ' <<<<<==== a quoi diable sert cette variable i ? Tu ne l'utilises d'ailleurs pas ! If ListView1.ListItems(r).SubItems(1) <> "0" Then '<<<=== à quoi diable sert cette condition, puisque tu n'en fais rien ? Else While Not (ListView1.ListItems(r).SubItems(1) <> "0") ListView1.ListItems.Remove (r) ' <<<=== ah ? et tu le supprimes combien de fois, cet index r ? autant de fois que de subitems ? i = i + 1 '<<<<=== voir plus ghaut ! à quoi diable sert ce compteur avec i ? Wend End If Next
Dim r As Long For r = 1 To ListView2.ListItems.Count If ListView2.ListItems(r).SubItems(1) = "0" Then ListView2.ListItems.Remove (r) Else Exit For End If Next
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionElse exit For end if
Private Sub Form_Load() ' Initialisation Listview1 With ListView1 .MultiSelect = True ' Sélection de plusieurs lignes .HideSelection = False ' Même sans le focus, la sélection reste .FullRowSelect = True ' Sélectionne la ligne entière .GridLines = True ' Affiche les lignes de la grille .View = lvwReport ' Affichage en grille '-------------------------------------------------------------------------- .ColumnHeaders.Add ' Ajout d'une colonne .ColumnHeaders.Add ' Ajout d'une colonne .ColumnHeaders(1).Text = "Réfèrence " ' Spécifie la caption de la première colonne .ColumnHeaders(1).Width = .Width / 4 .ColumnHeaders(2).Text = "GGGGG" ' Spécifie la caption de la deuxième colonne .ColumnHeaders(2).Width = .Width / 4 .Arrange = lvwAutoLeft ' Range tout à gauche End With ' Chargement de la Listview 1 Set Lview = ListView1.ListItems.Add() With Lview .Text = "Test" .SubItems(1) = "0" End With Set Lview = ListView1.ListItems.Add() With Lview .Text = "zozo5" .SubItems(1) = "0" End With Set Lview = ListView1.ListItems.Add() With Lview .Text = "Titi" .SubItems(1) = "3" End With Set Lview = ListView1.ListItems.Add() With Lview .Text = "zozo" .SubItems(1) = "1" End With Set Lview = ListView1.ListItems.Add() With Lview .Text = "Test" .SubItems(1) = "0" End With Set Lview = ListView1.ListItems.Add() With Lview .Text = "Titi" .SubItems(1) = "7" End With Set Lview = ListView1.ListItems.Add() With Lview .Text = "BiBi" .SubItems(1) = "0" End With End Sub Private Sub Command6_Click() On Error Resume Next Dim r As Long For r = ListView1.ListItems.Count - 1 To 0 Step -1 i = 0 If ListView1.ListItems(r).SubItems(1) <> "0" Then Else While Not (ListView1.ListItems(r).SubItems(1) <> "0") ListView1.ListItems.Remove (r) i = i + 1 Wend End If Next End Sub
mais voilà je ne suis peut être pas fait pour la programmation
dim r as long for r = listview.listitems.count to 1 step -1 if listview.listitems(r).subitems(1) = "0" then listview.listitems.remove(r) next