Somme des cellules dans une colonnes dans un datagridview

termitus19 27 Messages postés mercredi 7 janvier 2015Date d'inscription 7 juillet 2018 Dernière intervention - 7 juil. 2018 à 16:00 - Dernière réponse : Whismeril 11718 Messages postés mardi 11 mars 2003Date d'inscriptionContributeurStatut 8 juillet 2018 Dernière intervention
- 8 juil. 2018 à 19:33
Un grand Bonjour à vous ,
svp est ce que quelqu'un peut m'aider svp

j'aimerais faire la somme des éléments contenues dans des cellules correspondant à une colonnes et afficher le résultat dans un textbox.
merci de m'aider svp
Afficher la suite 

Votre réponse

9 réponses

Whismeril 11718 Messages postés mardi 11 mars 2003Date d'inscriptionContributeurStatut 8 juillet 2018 Dernière intervention - 7 juil. 2018 à 16:19
0
Merci
Bonjour

Ton datagridview est il bindé sur une source de données?

termitus19 27 Messages postés mercredi 7 janvier 2015Date d'inscription 7 juillet 2018 Dernière intervention - 7 juil. 2018 à 16:33
non j'ai utilisé j'ai utilisé: mndgv.Rows.add(elm1,elm2,elm3);
je veux faire la somme des cellules qui se trouve dans la colonne des elm3
Commenter la réponse de Whismeril
Whismeril 11718 Messages postés mardi 11 mars 2003Date d'inscriptionContributeurStatut 8 juillet 2018 Dernière intervention - 7 juil. 2018 à 17:50
0
Merci
ET bien c'est dommage, ça aurait été plus simple de faire la somme de nombres...

Dans ton cas, du dois faire une boucle de toute les cellules de la colonne, extraire le texte écrit, le convertir en nombre et enfin l'additionner.
termitus19 27 Messages postés mercredi 7 janvier 2015Date d'inscription 7 juillet 2018 Dernière intervention - 7 juil. 2018 à 18:14
et si le datagridview à été binde à une source
j'aurais fait quoi svp
Whismeril 11718 Messages postés mardi 11 mars 2003Date d'inscriptionContributeurStatut 8 juillet 2018 Dernière intervention - 7 juil. 2018 à 18:17
Tu aurais juste ajouter les nombres qui vont bien
Commenter la réponse de Whismeril
termitus19 27 Messages postés mercredi 7 janvier 2015Date d'inscription 7 juillet 2018 Dernière intervention - 7 juil. 2018 à 18:25
0
Merci
un exemple serait vraiment cool je suis un petit peu flou svp
si vous pouvez me donner un exemple svp
merci pour votre aide
Commenter la réponse de termitus19
Whismeril 11718 Messages postés mardi 11 mars 2003Date d'inscriptionContributeurStatut 8 juillet 2018 Dernière intervention - 7 juil. 2018 à 20:39
0
Merci
Soient les 2 classes suivantes
using System;
using System.Collections.Generic;
using System.Linq;

namespace test
{
    class ExempleTermitus
    {
        public List<LesDonnees> Donnees { get; set; }

        public int SommeElement3
        {
            get { return Donnees.Sum(x => x.Element3); }
        }

        public int SommeDeJanvier
        {
            get { return Donnees.Where(x => x.Element2.Month == 1).Sum(x => x.Element3); }
        }

        public int SommeDeS18DernierMois
        {
            get { return Donnees.Where(x => x.Element2 <= DateTime.Now && x.Element2 > DateTime.Now.Date.AddMonths(-18)).Sum(x => x.Element3); }
        }

        public int SommeTexte2
        {
            get { return Donnees.Where(x => x.Element1 == "Texte1" ).Sum(x => x.Element3); }
        }
    }

    class LesDonnees
    {
        public string Element1 { get; set; }

        public DateTime Element2 { get; set; }

        public int Element3 { get; set; }
    }
}


dans ton formulaire
            //Création de la source de données
            ExempleTermitus exemple = new ExempleTermitus();
            exemple.Donnees = new List<LesDonnees>
            {
                new LesDonnees{ Element1 = "Texte1", Element2 = new DateTime(2018,07,07), Element3 = 123},
                new LesDonnees{ Element1 = "Texte2", Element2 = new DateTime(2017,07,07), Element3 = 234},
                new LesDonnees{ Element1 = "Texte3", Element2 = new DateTime(2017,01,01), Element3 = 345},
                new LesDonnees{ Element1 = "Texte1", Element2 = new DateTime(2019,01,01), Element3 = 456},
                new LesDonnees{ Element1 = "Texte2", Element2 = new DateTime(2019,07,07), Element3 = 567},
                new LesDonnees{ Element1 = "Texte3", Element2 = new DateTime(2018,01,01), Element3 = 789},

            };


            //utilisation de la source de données
            dataGridView1.DataSource = exemple.Donnees;

            textBox1.Text = exemple.SommeElement3.ToString();
            textBox2.Text = exemple.SommeDeJanvier.ToString();
            textBox3.Text = exemple.SommeDeS18DernierMois.ToString();
            textBox4.Text = exemple.SommeTexte2.ToString();


Voilà un petit tuto sur le binding
https://codes-sources.commentcamarche.net/faq/1291-utilisation-du-binding-au-travers-de-l-objet-databindingsource

Et là un tuto moins petit sur la programmation objet en C#
https://codes-sources.commentcamarche.net/faq/11239-la-programmation-objet-appliquee-a-net-par-l-exemple-partie-1-sur-3

termitus19 27 Messages postés mercredi 7 janvier 2015Date d'inscription 7 juillet 2018 Dernière intervention - 7 juil. 2018 à 23:26
ça me va très bien
Merci beaucoup pour votre aide
Whismeril 11718 Messages postés mardi 11 mars 2003Date d'inscriptionContributeurStatut 8 juillet 2018 Dernière intervention - 8 juil. 2018 à 19:33
Commenter la réponse de Whismeril

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.