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 de n produits avec n connu


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Homme Profil pro
    tech mecanique
    Inscrit en
    Décembre 2018
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Maroc

    Informations professionnelles :
    Activité : tech mecanique
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2018
    Messages : 9
    Par défaut Somme de n produits avec n connu
    Bonjour Communauté, je reviens vers vous pour :
    somme de plusieurs produit comme suit :
    .Range (x,y).value = Sum (des produits des deux cellules bleues en fonction de ("n" =17) que je px déterminer et "n" étant le nombre des produits).value

    une sorte de :

    .Range (x,y).value = ( .Range("C",5) * .range("C",7)) + (.Range("C",13) * .range("C",15)) + ........

    Nom : 123456.PNG
Affichages : 232
Taille : 33,4 Ko

    merci d'avance pour vos réponses

  2. #2
    Membre Expert
    Inscrit en
    Septembre 2007
    Messages
    1 142
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 142
    Par défaut
    Bonjour,
    Citation Envoyé par leonardoleonardo Voir le message
    somme de plusieurs produit comme suit :
    .Range (x,y).value = Sum (des produits des deux cellules bleues en fonction de ("n" =17) que je px déterminer et "n" étant le nombre des produits).value
    Si tu veux faire la somme de plusieurs produits c'est la fonction SOMMEPROD qui est faite pour cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SOMMEPROD((MOD(LIGNE($C$1:$C$136);8)=5)*$C$1:$C$136*$C$3:$C$138)
    Avec cette formule tu additionnes les produits de tes "cellules bleues" sur 17 plages.

  3. #3
    Membre habitué
    Homme Profil pro
    tech mecanique
    Inscrit en
    Décembre 2018
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Maroc

    Informations professionnelles :
    Activité : tech mecanique
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2018
    Messages : 9
    Par défaut
    Merci Anasecu,

    par contre serait-il possible de me dire son équivalent VBA car j'ai impression que c'est une formule Excel, est-ce bien le cas?

  4. #4
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 84
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Par défaut
    Bonjour
    Il est souvent possible d'utiliser depuis VBA des méthodes qui reprennent (sans pour autant les utiliser dans une formule) des fonctions de Excel. Tel est, pour ce qui t'intéresse, le cas de la méthode WorksheetFunction.SumProduct Rubrique WorksheetFunction.SumProduct, méthode de ton aide interne VBA
    Inutile, donc, de réinventer la roue. Sauf s'il t'est imposé d'écrire en VBA les instructions qui conduiraient aux résultats de cette méthode. Mais quelle serait alors l'origine exacte d'une telle imposition ?

  5. #5
    Membre habitué
    Homme Profil pro
    tech mecanique
    Inscrit en
    Décembre 2018
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Maroc

    Informations professionnelles :
    Activité : tech mecanique
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2018
    Messages : 9
    Par défaut
    Bonjour Unparia,

    là je comprends bien, merci , non en fait ce n'est pas une exigence d'écrire en VBA mais juste une question sur l'équivalent VBA si ce la existe

  6. #6
    Expert confirmé Avatar de BENNASR
    Homme Profil pro
    Responsable comptable & financier
    Inscrit en
    Décembre 2013
    Messages
    2 974
    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 974
    Par défaut
    bonjour cousin, la forum
    tu fais la somme selon les couleurs ou quoi??? je te comprends pas...si c'est possible merci d'expliquer davatange
    si tu cherches à faire une somme à plusieurs conditions vous avez sumifs
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     .Cells(I, "C").Value = Application.WorksheetFunction.SumIfs(Sheets("feuil1").Range("C1:C7"), Sheets("feuil1").Range("A1:A7"), .Cells(I, "A"), Sheets("feuil1").Range("B1:B7"), .Cells(I, "B"))
    sumifs(champs à sommer, champs condition1, condition1, champs condition2, condition2...)

  7. #7
    Membre Expert
    Inscrit en
    Septembre 2007
    Messages
    1 142
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 142
    Par défaut
    Bonjour unparia,
    Citation Envoyé par unparia Voir le message
    le cas de la méthode WorksheetFunction.SumProduct de ton aide interne VBA
    Inutile, donc, de réinventer la roue.
    Tout à fait d'accord pour utiliser "Application.WorksheetFunction.SumProduct" ou même plus simplement "Application.SumProduct",
    mais dans ma formule j'utilise aussi les fonctions "MOD" et "LIGNE" qui ne sont pas considérées comme des WorksheetFunction.

    As-tu une astuce pour la faire fonctionner ? je n'ai pas trouvé mais ce doit être possible sans doute : merci d'avance.

  8. #8
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 84
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Par défaut
    la fonction Excel MOD retourne un modulo (le reste d'une division)
    C'est ce que fait en VBA l'opérateur MOD
    La fonction Excel Ligne retourne le N° de ligne d'une "référence" (une plage de cellules)
    C'est ce que fait en VBA la propriété Row d'un objet Range

Discussions similaires

  1. [XL-2007] Somme de produits avec filtres (sous.total + sommeprod)
    Par pastis.vi dans le forum Excel
    Réponses: 13
    Dernier message: 06/06/2017, 19h16
  2. [Debutant]Somme de deux nombres avec résultat connu
    Par Tchupa dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 22/06/2007, 10h32
  3. suppression produit avec même nom
    Par betaphp dans le forum Langage SQL
    Réponses: 18
    Dernier message: 29/11/2005, 22h32
  4. [RCP] pb d'export du produit avec une librairie
    Par nuandafr dans le forum Eclipse Platform
    Réponses: 1
    Dernier message: 19/08/2005, 12h08
  5. INSERT avec valeur connue et résultat d'un SELECT...
    Par snoop dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 27/04/2005, 08h54

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