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

Macros et VBA Excel Discussion :

Somme des valeurs d'une colonne de listbox en fonction d'un critère


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Comptable
    Inscrit en
    Août 2018
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Togo

    Informations professionnelles :
    Activité : Comptable

    Informations forums :
    Inscription : Août 2018
    Messages : 30
    Points : 32
    Points
    32
    Par défaut Somme des valeurs d'une colonne de listbox en fonction d'un critère
    Bonjour la communauté

    J'ai une listbox de 14 colonnes qui me permettent de charger des données de facturation. Une facture identifiée par un numéro peut comporter plusieurs lignes dans la listbox (par exemple si je facture 2 articles pour un client, on aura dans la listbox, pour le même numéro de facture, deux libellés et deux montant différents dans les colonnes correspondantes).

    Mon userform me permet de faire des recherches des factures dans la listbox; lorsque je sélectionne une ligne de la listbox, elle me renvoie dans des textbox les informations de la facture telle que le nom du client, son adresse, les articles facturées, … Cela me permet d'avoir un aperçu visuel de mes données au click. Pour ça mes codes marchent super bien.

    Mon souci, c'est de pouvoir avoir le montant total de la facture en additionnant les dans les montants de chaque ligne d'article correspondant à la facture sélectionnée (identifiée par son numéro). Voici mon code: Le critère est le numéro de facture qu'on retrouve dans la colonne 4 de la listbox et les montants à sommer sont dans la colonne 13.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Private Sub Liste_Factures_Click()
     
    Dim i As integer
    Dim T As Double 'déclare la variable T (Total)
     
    With Me.Liste_Factures
    For i = 0 To .ListCount - 1
    If .List(.ListIndex, 3) = Me.Label_Numéro.Caption And .Selected(i) = True Then
    T = T + .List(i, 12)
    End If
    Next
    End With
     
    Me.Txt_Montant.Value = T
    Mon code ne me renvoie que le montant de la ligne sélectionné; alors que je souhaite pour le même numéro de facture, du moment qu'une seule ligne est sélectionné de me renvoyer la somme des montant correspondant au numéro stocké dans Me.Label_Numéro.Caption.

    Malheureusement je ne peut pas joindre mon classeur pour cause de confidentialité de plusieurs données.

    Merci bien pour vos inestimables apports!

  2. #2
    Expert confirmé Avatar de BENNASR
    Homme Profil pro
    Responsable comptable & financier
    Inscrit en
    Décembre 2013
    Messages
    2 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Responsable comptable & financier
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2013
    Messages : 2 914
    Points : 5 121
    Points
    5 121
    Par défaut
    Bonjour
    je crois que le problème viens de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If .List(.ListIndex, 3) = Me.Label_Numéro.Caption And .Selected(i) = True
    si tu la remplace par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If .List(.ListIndex, 3) = Me.Label_Numéro.Caption
    --------------------------------------------------------------*****----------------------------------------------------------------------------
    Bonne Continuation & Plein Succès
    Notre seul pouvoir véritable consiste à aider autrui avec modestie
    ______________________________________________________
    Pour dire merci, cliquer sur et quand la discussion est résolue, penser à cliquer sur le bouton

Discussions similaires

  1. Réponses: 2
    Dernier message: 29/03/2019, 17h19
  2. Réponses: 5
    Dernier message: 29/03/2019, 10h08
  3. Réponses: 4
    Dernier message: 29/06/2016, 11h34
  4. [XL-2003] Fusion + Somme des valeurs d'une colonne
    Par arkhang dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 19/06/2014, 16h40

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