Bonjour, je veux calculer la somme des valeurs des cellule qui ont le code 1
et les mettre dans une Cologne 9
le code 1 c'est la Cologne 10 : DataGridView1.Rows(i).Cells(10).Value
Dim i
Dim somme As Double
For i = 0 To DataGridView1.Rows.Count - 1
Dim j = DataGridView1.Rows(i).Cells(10).Value
For j = 0 To DataGridView1.Rows(i).Cells(10).Value - 1
If j.Equals(DataGridView1.Rows(i).Cells(10).Value) Then
somme = somme + DataGridView1.Item(1, i).Value
DataGridView1.Rows(i).Cells(9).Value = somme
End If
Next j
Next i
le probléme c'est que ile me fait la somme de tous les Colognes de la grid view
EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ICI
Bonjour
Cela ne sert à rien de mettre 2 fois ton problème ( à moins que ce ne soit qu'une erreur involontaire de manipulation)
Pas claire ton explication !
tous simplement je veux calculer la somme d'une liste de Cologne qui se trouve dans une gridview et mettre la somme dans une autres Cologne de la même gridview
Dans une gridview on fait les sommes soit pour une colonne soit pour une ligne ( Cologne est une ville en Allemagne)
C'est quoi pour toi une liste de colonnes
Car qui dit colonne dit aussi ligne
Et c'est quoi les cellules code 1 ?
tu parles de Gridview (qui est un contrôle WPF) et ton code montre un DataGridView (qui est un contrôle Winform).
Déjà il faut clarifier ce point, car s'il est plus judicieux de passer par une classe et du binding en winform, c'est quasiment obligatoire en WPF....
non je veux dire une DataGridView
calculer la somme d'une liste de Cologne qui se trouve dans une DataGridView et mettre la somme dans une autres Cologne de la même DataGridView
le second bloc de 4 lignes contient 2 domaines de compétences : on fait quoi dans ce cas ?
Où détermines-tu les types de compétences ?
Et ainsi de suite signifie quoi ?
On en est à 10 messages et c'est de moins en moins clair !
Les 4 premières lignes donnent 11 (compétence HSE)
Les 2 suivantes donnent 4 (compétence MG)
La suivante donne 2 ( compétence HSE)
La suivante donne 2 ( compétence MG)
Pour les 4 premières lignes tu voudrais le résultat 11 sur la 3° ligne en colonne 9
Pour les 2 lignes suivantes le résultat 4 serait en colonne 9 sur la ligne 5
Attention les lignes commencent à 0 et les colonnes aussi
Maintenant que l'on sait ce qu'il faut faire on va réfléchir
1 est la colonne des NVMaitrise à ajouter
10 est la colonne des compétences
9 est la colonne des sommes à afficher
Dim somme As Integer = DataGridView1.Item(1, 0).Value For i = 1 To DataGridView1.Rows.Count - 1 If DataGridView1.Rows(i).Cells(10).Value = DataGridView1.Rows(i-1).Cells(10).Value Then somme = somme + DataGridView1.Item(1, i).Value Else DataGridView1.Rows(i-1).Cells(9).Value = somme somme =DataGridView1.Item(1,i).Value End if Next i
maintenant et excuse moi pour le dérangement
si je veux deviser cette somme sur le nombre de ligne compté par exemple ici c'est 4 ça veut dire 11/4=...
Ce n'est nullement un problème de code mais une petite réflexion devrait te donner la solution avec un compteur de lignes que tu réinitialises à chaque changement de compétence
Dans ce cas repasses somme en type Double car tu dois le diviser par le nombre de lignes ( le compteur de compétences)
28 avril 2016 à 17:04
tous simplement je veux calculer la somme d'une liste de Cologne qui se trouve dans une gridview et mettre la somme dans une autres Cologne de la même gridview
Modifié par vb95 le 28/04/2016 à 17:13
C'est quoi pour toi une liste de colonnes
Car qui dit colonne dit aussi ligne
Et c'est quoi les cellules code 1 ?