Somme conditionnelle dans listview

salhi_haithem

XLDnaute Junior
bjr le forum

Encore avec la listview

je pose mon problème j'ai une listview de 7 colonne

Code:
With ListView1
  With .ColumnHeaders
  .Clear 'Supprime les anciens entêtes
  
  .Add , , "Article", 80, lvwColumnLeft
  .Add , , "Libellé", 150, lvwColumnLeft
  .Add , , "SEQ", 30, lvwColumnLeft
  .Add , , "Composant", 90, lvwColumnLeft 'lvwColumnCenter
  .Add , , "Désignation", 150, lvwColumnLeft
  .Add , , "Unité", 30, lvwColumnLeft
  .Add , , "QTE UN", 55, lvwColumnCenter
  
  
  End With
j'aimerai faire une somme de la colonne QTE UN selon une condition de la colonne de composant ,
c'est a dire que j'aimerai par exemple faire la somme des lignes de la 6eme colonne "QTE UN" de l'article "MP4000" de la 3eme colonne "Composant".

j'ai essayé ce code mais il ne fait pas la somme ou la boucle ne marche pas. il me donne la dernière valeur de la dernière ligne de l'article "MP4000"

Code:
Dim Cristal As Double
Dim k As Long

With Me.ListView1

For k = 1 To .ListItems.Count

If .ListItems(k).ListSubItems(3) = "MP4000" Then
Cristal = .ListItems(k).ListSubItems(6)

End If
Next k

msgbox Cristal

End With
et merci d'avance
 

bika

XLDnaute Nouveau
Bonjour
il faut juste incrémenter Cristal:

Code:
Cristal = Cristal +.ListItems(k).ListSubItems(6)
 

salhi_haithem

XLDnaute Junior
ca ne marche pas comme ci le boucle sur listview ne fonctionne pas et il me rapporte la valeur de la dernière ligne qui contient "MP4000"
 

Créez un compte ou connectez vous pour répondre

Vous devez être membre afin de pouvoir répondre ici

Créer un compte

Créez un compte Excel Downloads. C'est simple!

Connexion

Vous avez déjà un compte? Connectez vous ici.

Haut Bas