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 :

VBA : insertion d'une formule EXCEL


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Architecte technique
    Inscrit en
    Janvier 2015
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Janvier 2015
    Messages : 197
    Par défaut VBA : insertion d'une formule EXCEL
    Bonjour le Forum,

    J'ai un fichier source qui contient des clients avec leurs engagements . Je voudrais créer une macro qui calcule le taux moyen pondéré (TMP) pour chaque client ainsi que pour chaque code banque.

    Le taux moyen pondéré (TMP) pour un client ou une banque
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SOMMEPROD(MONTANT*TAUX*PÉRIODE))/SOMME PROD(MONTANT*PÉRIODE)
    Désolé je suis débutant en VBA et J'ai pas su comment utiliser le calcul matriciel pour insérer cette formule.

    Merci pour votre aide.

  2. #2
    Membre Expert Avatar de antonysansh
    Homme Profil pro
    Chargé d'études RH
    Inscrit en
    Mai 2014
    Messages
    1 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chargé d'études RH
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2014
    Messages : 1 115
    Par défaut
    Bonjour LANGAZOU,

    Perso je ne sais jamais écrire de formule en VB mais je les retrouves toujours grâce à l'enregistreur de macro.
    Il te suffit :
    • D’écrire ta formule Excel comme tu la souhaite
    • Lancer l'enregistreur de macro
    • Te placer sur ta cellule
    • F2 (pour entrer dans la formule)
    • Entrer (ou Ctrl + Maj + Entrer si matricielle)
    • Stopper l'enregistreur


    Tu as maintenant un module avec le code VB de ta formule

    Tu trouveras plus de détails et astuces sur l'enregistreur de macro dans Ce Tuto de Pierre Fauconnier

  3. #3
    Expert confirmé
    Avatar de kiki29
    Homme Profil pro
    ex Observeur CGG / Analyste prog.
    Inscrit en
    Juin 2006
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ex Observeur CGG / Analyste prog.

    Informations forums :
    Inscription : Juin 2006
    Messages : 6 132
    Par défaut
    Salut, si cela peut aider : Excel et l'enregistreur de macro

  4. #4
    Membre confirmé
    Homme Profil pro
    Architecte technique
    Inscrit en
    Janvier 2015
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Janvier 2015
    Messages : 197
    Par défaut
    Bonjour,

    Merci pour vos réponse.

    Le problème c'est qu'avant d'appliquer ma formule (à l'aide de l'enregistreur de macro) il fallait filtrer la plage de donnée par client.

    Je précise encore plus, tout en sachant qu'un seul client peut existait plusieurs fois , pour appliquer ma formule je dois filtrer manuellement la plage de donnée pour chaque client et appliquer la formule du TMP. j'ai 200 clients et je ne peut pas filtrer manuellement la plage par client avant d'appliquer ma formule.

    ci-joint mon fichier :CD (2).xlsx

    Merci beaucoup d'avance.

  5. #5
    Membre Expert Avatar de antonysansh
    Homme Profil pro
    Chargé d'études RH
    Inscrit en
    Mai 2014
    Messages
    1 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chargé d'études RH
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2014
    Messages : 1 115
    Par défaut
    Pas besoin de filtrer manuellement avec SommeProd :

    En H3 : =SOMMEPROD($E$3:$E$11*$F$3:$F$11*$D$3:$D$11;N($B$3:$B$11=G3))/SOMMEPROD($E$3:$E$11*$D$3:$D$11;N($B$3:$B$11=G3))
    A valider par Ctrl + Maj + Enter (formule matricielle)
    Etendre sur tous tes clients
    Nom : Capture.PNG
Affichages : 182
Taille : 27,1 Ko

    Tu vas otenir ce tableau :
    Nom : Capture.PNG
Affichages : 184
Taille : 4,3 Ko

  6. #6
    Membre confirmé
    Homme Profil pro
    Architecte technique
    Inscrit en
    Janvier 2015
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Janvier 2015
    Messages : 197
    Par défaut
    Salut antonysansh,

    Merci pour votre aide.

    pouvez vous svp me transmettre le fichier EXCEL parce que je n'ai pas bien compri comment ça fonctionne avec l'ajout de ("N($B$3:$B$11=G3)").

    Merci beaucoup.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. VBA insertion d'une formule somme avec des données dynamique
    Par yann26 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 16/06/2014, 16h32
  2. insertion de cellules dans une formule excel
    Par nazaire dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 11/06/2008, 19h12
  3. Forcage sous VBA d'une formule excel
    Par oliver75 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 12/10/2007, 10h22
  4. Transformé une formule Excel en script VBA ?
    Par SFLEY dans le forum Macros et VBA Excel
    Réponses: 14
    Dernier message: 06/01/2007, 11h48
  5. [VBA]Passer une variable dans une formule Excel
    Par David1974 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 27/01/2006, 16h52

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