Qu' est ce qui ne va pas ? ( Comparaison ListViews )
cs_Fripouil
Messages postés175Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention 8 mai 2017
-
17 févr. 2012 à 13:00
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018
-
19 févr. 2012 à 17:31
Bonjour,
voilà je bloque depuis quelques jours la dessus et ça commence à m' agacer...
Dim Test As Boolean
Dim j As Integer
Dim i As Integer
For i = 0 To List_Fournisseur.Items.Count - 1
Test = False
For j = 0 To List_Client.Items.Count - 1
If List_Fournisseur.Items(i).SubItems(0).Text List_Client.Items(j).SubItems(0).Text And List_Fournisseur.Items(i).SubItems(1).Text "0" Then
List_Produits.Items.Add(List_Fournisseur.Items(i).SubItems(0).Text)
Test = True
Exit For
End If
Next
If Not Test Then
End If
Next
Le but est de comparer les données présentes dans List_Client ( 1 colonne : Référénce ) avec celles de List_Fournisseur, ( 3 Colonnes : Référence / Quantité / Etat ) si les "Références" sont identiques dans les 2 ListViews on vérifie l' information "Quantité" de List_Fournisseur si celle-ci = 0, on ajoute la "Référence" dans List_Produits.
Merci par avance de votre aide.
Fripouil
A voir également:
Qu' est ce qui ne va pas ? ( Comparaison ListViews )
NHenry
Messages postés15049Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention25 mars 2023156 17 févr. 2012 à 23:55
Bonjour,
Quel est le résultat obtenu et qui ne te convient pas ?
---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, ce lien ou encore celui-ci[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list ---
Mon site
Maintenant lors de la Comparaison, je veux vérifier que les Items de List_Client sont encore disponible dans List_Fournisseur si ce n' est pas le cas alors, on ajoute dans List_Produits :
Référence - Quantité - Disponibilité
BBBBBBBBB - 0 - En Commande
DDDDDDDDD - 0 - En Rupture
Je bidouille depuis 3 jours plusieurs codes trouvés sur le net mais rien y fait. A l'heure actuelle, quand je clique sur mon bouton "Comparer", mon prog ne réagit plus...
Voila j' espére avoir était clair et merci si tu peux m' aider.......ou pas lol
NHenry
Messages postés15049Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention25 mars 2023156 19 févr. 2012 à 16:46
Bonjour,
Le code que tu as montré ne devrait pas bloquer indéfiniment le programme.
Sur combien d'éléments tu as fais le test ?
Le code montré semble cohérent par rapport au but désiré.
---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, ce lien ou encore celui-ci[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list ---
Mon site
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018220 19 févr. 2012 à 17:06
Bonjour,
Déjà et ce qui "saute aux yeux"
Tu ne cherches des correspondances que pour un même index (i) !
Et je ne crois pas que ce soit là ton but (rechercher dans toute une liste si présence d'un item de l'autre).
____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
Vous n’avez pas trouvé la réponse que vous recherchez ?
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018220 19 févr. 2012 à 17:23
Tu irais mille fois plus vite et plus sûrement en :
- utilisant un objet dictionnary (appelons-le toto)
- en alimentant cet objet toto par tes items de List_Fournisseur
puis, tout simplement,
Pour chaque item de List_Client :
- si n'existe pas : ne rien faire
- si existe dans toto : regarder dans toto sa valeur et si 0 ===>> ajouter à List_Produits
____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018220 19 févr. 2012 à 17:31
Et tu ferais en plus une économie de deux listviews (et en plus : gain de vitesse dans la boucle)
si (car je sais -j'ai vu ton autre discussion- que tes deux listviews proviennent de fichiers CSV) tu alimentais d'emblée deux tableaus dynamiques depuis ces CSV, pour les traiter ensuite
Comment le faire ? tu trouveras ci-dessous une excellente réponse de PCPT
Tapez le texte de l'url ici. ____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient