IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

calculer la somme du montant dans un textbox


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Octobre 2009
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Octobre 2009
    Messages : 36
    Par défaut calculer la somme du montant dans un textbox
    Bonjour,

    J'ai un datagridview qui contient des données où une colonne du montant et je veux afficher la somme du montant dans un textbox à chaque ajout d'une nouvelle ligne à la base SqlServer

    Une idée comment réaliser cela ?

    Merci.

  2. #2
    Modérateur
    Avatar de Sankasssss
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2006
    Messages
    1 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 842
    Par défaut
    Bonjour,
    une requête genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select sum(maColonne) from maTable
    après l'insertion en base de donnée?

  3. #3
    Membre averti
    Inscrit en
    Octobre 2009
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Octobre 2009
    Messages : 36
    Par défaut
    bonsoir,
    oui la somme après l'insertion à la base de données
    est ce que c'est la bonne requete et comment je peux le maitre !!!

  4. #4
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Mars 2008
    Messages
    161
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Mars 2008
    Messages : 161
    Par défaut
    salut

    Tu peux mettre le code d'insertion dans le texbox juste après le code d'affichage dans le GridView.

    Tu peux aussi mettre le code d'insertion dans le texbox dans une fonction que tu pourra appeller juste après le code d'affichage dans le GridView.

    Voici un bout de code qui pourra t'aider

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Dim command As New OleDb.OleDbCommand("select sum(MntCalcule) as MaSomme from MaTable", ConnectStr)
                Dim LeReader As OleDb.OleDbDataReader = command.ExecuteReader
                If LeReader.Read Then
                    TextBox3.Text = LeReader!MaSomme
                End If

  5. #5
    Modérateur
    Avatar de Sankasssss
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2006
    Messages
    1 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 842
    Par défaut
    Citation Envoyé par peregna2007 Voir le message
    Voici un bout de code qui pourra t'aider

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Dim command As New OleDb.OleDbCommand("select sum(MntCalcule) as MaSomme from MaTable", ConnectStr)
                Dim LeReader As OleDb.OleDbDataReader = command.ExecuteReader
                If LeReader.Read Then
                    TextBox3.Text = LeReader!MaSomme
                End If
    C'est presque ca
    Quand le requête ne retourne qu'un résultat, qu'on appel fonction d'agrégation :
    Une fonction d'agrégation est un résultat unique à partir de multiples entrées-lignes. Par exemple les agrégats pour calculer les count, sum, avg (moyenne), max (maximum) et min (minimum) sur un ensemble de lignes.
    On utilise la fonction ExecuteScalar :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim command As New OleDb.OleDbCommand("select sum(MntCalcule) as MaSomme from MaTable", ConnectStr)
    TextBox3.Text = command.ExecuteScalar
    Et en plus c'est plus simple et propre

  6. #6
    Membre averti
    Inscrit en
    Octobre 2009
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Octobre 2009
    Messages : 36
    Par défaut
    salut
    j'ai mis le code après le remplissage du datagridview mais il n'a pas affiché le resultat :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            Try
                da.Fill(ds, "reglement")
                DataGridView1.DataSource = ds.Tables("reglement")
                Dim command As New SqlCommand("SELECT SUM(montant) AS Somme FROM reglement", cs)
                TextBox1.Text = command.ExecuteScalar
            Catch ex As Exception
            End Try
        End Sub
    qui peut m'aider

Discussions similaires

  1. calculer la somme des heures dans un état
    Par fahdmounkaila dans le forum WinDev
    Réponses: 3
    Dernier message: 10/08/2011, 15h53
  2. [AC-2007] calcul de somme et filtre dans un état
    Par guillaume2vo dans le forum IHM
    Réponses: 1
    Dernier message: 04/11/2009, 08h47
  3. Réponses: 0
    Dernier message: 04/10/2009, 20h08
  4. Sommes des valeurs dans un textbox multiligne
    Par Namson dans le forum VB.NET
    Réponses: 1
    Dernier message: 02/03/2009, 00h29
  5. calculer la somme des elements dans un panier
    Par Akramweb dans le forum Langage
    Réponses: 2
    Dernier message: 08/01/2009, 15h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo