cs_Fripouil
Messages postés175Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention 8 mai 2017
-
21 mai 2008 à 14:20
cs_Fripouil
Messages postés175Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention 8 mai 2017
-
3 juin 2008 à 15:31
Bonjour,
Voila mon probléme car j' ai beau faire tout ce que je peux mais je n' y arrive pas.
J' ai 2 listview à 2 colonnes qui contiennent des infos
et 1 troisiémes vide
Comment afficher dans la listview 3 les items qui manquent dans la listview2 par rapport à ceux de la listview1 ?
jimy neutron
Messages postés491Date d'inscriptionmercredi 1 février 2006StatutMembreDernière intervention18 novembre 20161 21 mai 2008 à 15:08
Salut,
Private Sub CommandButton3_Click()
Dim IndexLV1 As Integer
Dim IndexLV2 As Integer
Dim IndexLV3 As Integer
Dim ValLV1 As String
Lv3.ListItems.Clear
IndexLV3 = 1
For IndexLV1 = 1 To Lv1.ListItems.Count
ValLV1 = Lv1.ListItems(IndexLV1).SubItems(1).Text
For IndexLV2 = 1 To Lv2.ListItems.Count
'Si il a été trouvé on passe à la ligne suivante dans Lv1
If Lv2.ListItems(IndexLV2).SubItems(1).Text = ValLV1 Then GoTo Suite
Next IndexLV2
'Si il n'a pas été trouvé on l'ajoute à LV3
Lv3.ListItems(IndexLV3).SubItems(1).Text = ValLV1
IndexLV3 = IndexLV3 + 1
End If
Suite:
Next IndexLV1
End Sub
Le principe est valable pour une colonne, tu devrs l'adapter pour la deuxième.
Jimy
jimy neutron
Messages postés491Date d'inscriptionmercredi 1 février 2006StatutMembreDernière intervention18 novembre 20161 21 mai 2008 à 16:09
Rectification:
Le code ci-dessus controle la deuxieme colonne de chaque ligne.
Voici pour la premiere:
Private Sub CommandButton3_Click()
Dim IndexLV1 As Integer
Dim IndexLV2 As Integer
Dim IndexLV3 As Integer
Dim ValLV1 As String
Lv3.ListItems.Clear
IndexLV3 = 1
For IndexLV1 = 1 To Lv1.ListItems.Count
ValLV1 = Lv1.ListItems(IndexLV1).Text
For IndexLV2 = 1 To Lv2.ListItems.Count
'Si il a été trouvé on passe à la ligne suivante dans Lv1
If Lv2.ListItems(IndexLV2).Text = ValLV1 Then GoTo Suite
Next IndexLV2
'Si il n'a pas été trouvé on l'ajoute à LV3
Lv3.ListItems.Add IndexLV3, , ValLV1
IndexLV3 = IndexLV3 + 1
End If
Suite:
Next IndexLV1
End Sub
Mieux? Le "Lv3.ListItems.Add IndexLV3, , ValLV1" (Add) est indispensable pour creer une nouvelle ligne dans Lv3
Au fait, tu ne la pas précisé, si tu trouve une infos de Lv1 qui n'exista pas dans Lv2, tu recopie la ligne complete dans Lv3?