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 :

Combinaison subtotal et sumproduct


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé Avatar de cwain
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    218
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 218
    Par défaut Combinaison subtotal et sumproduct
    Bonjour,

    J'ai un petit souci avec l'utilisation de sumproduct et subtotal. Je m'explique :
    je dois grouper des données en utilisant la fonction Subtotal. Cette fonction permet d'avoir des lignes de sous-totaux, très bien. Le souci, c'est que j'ai une colonne où je suis intéressé par avoir une somme, et une autre ou je dois avoir un sumproduct.
    D'une part la fonction sumproduct semble ne pas exister associée à subtotal, d'autre part, quand bien même elle existe, comment fait-on pour avoir deux types de sous-totaux suivant les colonnes ?

    Merci d'avance pour votre aide !

    Cwain

    PS : remarquez, le faire juste sous excel, j'y arrive déjà pas...

  2. #2
    Inactif  
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 054
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 054
    Par défaut
    Bonjour,
    dans Excel Francais ce sont les fonctions SOMME et SOUS.TOTAL
    Exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Colonne A un série de nombre
    Cellule C1 = 9 'le numéro de la fonction de SOUS.TOTAL
    Colonne B en B5 la formule
        =SOUS.TOTAL(C1; A1:A5) dans mon ex =124
    dans colonne C en C20
        =SOMME(B1:B20) dans mon ex =124
    Je ne sais pas si ça répond à ce que tu veux mais c'est ce que j'ai compris.
    A+

  3. #3
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    La fonction Subtotal exige un tri des données, ou je me souviens mal...
    Dans ce cas-là comme il en va de même pour sumproduct... à part le faire en deux fois ou en créant une copie de ta feuille, je ne vois pas.

    Edit
    Par contre, par macro et sans tri, tu peux...

  4. #4
    Inactif  
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 054
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 054
    Par défaut
    bonjour ouskel'n'or,
    Je suppose que Subtotal =SOUS.TOTAL en francais !
    Dans ce cas, cette fonction contient 11 fonctions différentes, d'ou le N° de la fonction qui avec le paramètre 9 fait la somme en excluant les lignes masquées et les autres sous.totaux pour éviter le comptage en double. et ne prend pas en compte les données résultant d'un filtrage.
    A+
    PS: ou alors j'ai pas bien compris mais je ne trouve pas SumProduct et SubTotal dans l'aide
    EDIT: OK oubliez ce que j'ai dit jusqu'à présent, j'ai fait une recherche et apparement il faut Excel 2003 et j'ai trouvé une page d'explications qui me parraissent assez claires. En anglais

  5. #5
    Membre éprouvé Avatar de cwain
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    218
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 218
    Par défaut
    Merci pour vos réponses

    Bon, il apparaît que sumproduct n'existe pas dans subtotal, donc, je me suis résigné à ajouter une colonne qui me fait le produit pour chaque ligne (mettons Cx = Ax * Bx), et garder mon subtotal avec la fonction sum.
    Tout simple, mais une légère déception de ne pas avoir trouvé de solution plus jolie

  6. #6
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    LeForestier, Sous-total sur une plage triée crée trois niveaux de lecture
    3 - Le détail avec les sous-totaux et le total général
    2 - Les sous-totaux et le total général
    1 - Le total général
    (inversement numérotés sur les onglets)
    Et l'aide dit
    La fonction SOUS.TOTAL ne prend pas en compte les lignes masquées suite à un filtrage. Le sous-total ne porte que sur les données visibles résultant du filtrage d'une liste
    Quand tu masques le niveau 3 (détail) il reste les sous-totaux et le total général
    Quand tu masques le volet 2 (sous-totaux) il te reste le total général.
    Juste comme ça en passant.
    J'ai voulu le vérifier avant de répondre mais je n'ai pas pu reproduire le phénomène (déjà observé chez moi) de cwain, le total général se plaçant normalement en fin de feuille dans le test que je viens de faire.

Discussions similaires

  1. [Algo] Trouver un arrangement ou une combinaison d'éléments
    Par Morvan Mikael dans le forum Algorithmes et structures de données
    Réponses: 16
    Dernier message: 20/04/2013, 11h46
  2. [combinatoire] combinaisons de toutes longueur
    Par Toorop dans le forum Algorithmes et structures de données
    Réponses: 4
    Dernier message: 16/02/2007, 16h08
  3. Combinaison de deux selects simples
    Par devtrax dans le forum Langage SQL
    Réponses: 5
    Dernier message: 09/09/2004, 14h09
  4. Somme de combinaisons
    Par phig dans le forum Mathématiques
    Réponses: 3
    Dernier message: 24/10/2003, 15h03
  5. Réponses: 2
    Dernier message: 22/07/2002, 18h02

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