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

Excel Discussion :

solution excel pour calculer les Pi


Sujet :

Excel

  1. #1
    Membre du Club
    Homme Profil pro
    Ingénieur commercial
    Inscrit en
    Octobre 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur commercial

    Informations forums :
    Inscription : Octobre 2012
    Messages : 6
    Par défaut solution excel pour calculer les Pi
    Bjr, merci à vous de m'indiquer une solution tableur ou macro excel, me permetant de calculer avec precision exacte des valeurs Pi (inconus) dont la somme des produits avec les Qi (conus) càd :[ somme(Qi*Pi)]=M M(conu). chaque Pi est situé entre une limite inferieur et superieur [Pi min et Pi max] .chaque Pi est unique

  2. #2
    Membre émérite
    Homme Profil pro
    Contrôleur de gestion en activité
    Inscrit en
    Juillet 2012
    Messages
    545
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Contrôleur de gestion en activité
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2012
    Messages : 545
    Par défaut
    bonsoir,

    un exemple serait utile, c'est possible d'en avoir un ?
    sinon, quelles relations entre les Pi ?

  3. #3
    Membre éprouvé
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Mai 2010
    Messages
    120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2010
    Messages : 120
    Par défaut
    Salut,

    Regardes ce que tu peux faire avec le solveur, il me semble l'avoir déjà utilisé pour faire des calculs similaires.

  4. #4
    Membre éprouvé
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Mai 2010
    Messages
    120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2010
    Messages : 120
    Par défaut
    Voilà une solution avec le solveur :

    Colonne B => Pi
    Colonne C => Qi

    Cellule E2 => M
    En E2 on met la formule de calcul de M à savoir la somme des produits des colonnes B (vides) et C (valeurs connues). Le resultat est bien sûr 0.

    On ouvre ensuite le solveur et on saisi les paramètres suivants :
    - Objectif à définir : E2
    - On choisi valeur (pour obtenir les Pi correspondant à un M connu)
    - Cellules variables : colonne B
    - Contraintes : il faut saisir les contraintes sur tes Pi pour indiquer leur minimum et maximum
    On clique sur "Résoudre" et le tour est joué !

    J'ai mis un fichier pour exemple (sans gérer les contraintes).
    Fichiers attachés Fichiers attachés

  5. #5
    Membre du Club
    Homme Profil pro
    Ingénieur commercial
    Inscrit en
    Octobre 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur commercial

    Informations forums :
    Inscription : Octobre 2012
    Messages : 6
    Par défaut recherche des Pi
    un grand merci à vous Lucas c nouveau pour moi; j'ai effectué une série de simulations avec prise en charge des contraintes; bon résultat mais: c une solution qui risque d’être lourde à exploiter pour une base longue ( saisir les contraintes (i x2) ou (ix3) au cas ou les Pi sont des Nb entiers).

    ce que je cherche c un code VBA qui prend en charge ce traitement d’itération

  6. #6
    Membre du Club
    Homme Profil pro
    Ingénieur commercial
    Inscrit en
    Octobre 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur commercial

    Informations forums :
    Inscription : Octobre 2012
    Messages : 6
    Par défaut
    Bonsoir Michel

    merci, J'ai mis un fichier pour exemple . il n'existe pas de relation entre les pi

    à bientôt

    exemple de recherche -Pi v1.xlsx

  7. #7
    Membre éprouvé
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Mai 2010
    Messages
    120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2010
    Messages : 120
    Par défaut
    Salut,

    Tu peux piloter le solveur via VBA, tu pourrais donc faire une boucle pour ajouter tes contraintes.
    Je pense que développer un algorithme pour faire le job du solveur est relativement complexe donc autant se servir de ce qui existe.

    Par contre je suis désolé mais je ne maitrise pas le code relatif au solveur donc je ne peux pas t'aider plus que ça.
    Commences par enregistrer une macro, je ne penses pas que ce soit très compliqué d'ajouter des contraintes via une boucle.

  8. #8
    Membre éprouvé
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Mai 2010
    Messages
    120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2010
    Messages : 120
    Par défaut
    Re,

    J'ai jeté un coup d'oeil rapide aux fonctions VBA pour le solveur, et finalement c'est très simple à utiliser.

    J'ai écris (et enregistré) une procédure à partir de ton fichier exemple pour ajouter les contraintes en automatique. Pour l'éxécuter il faut au préalable activer la référence Solver dans VBE (Outils >> Références >> Cocher Solver).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    Sub Solveur()
     
    Dim i As Integer
     
    'Définition de la cible à atteindre et des cellules variables
    SolverOk _
            SetCell:="$E$13", _
            MaxMinVal:=3, _
            ValueOf:=120375.12, _
            ByChange:="$D$4:$D$12", _
            Engine:=1, _
            EngineDesc:="GRG Nonlinear"
     
    'Ajout des contraintes
    For i = 4 To 12
        SolverAdd CellRef:="$D$" & i, Relation:=3, FormulaText:="$G$" & i
        SolverAdd CellRef:="$D$" & i, Relation:=1, FormulaText:="$H$" & i
    Next i
     
    'Lancement du calcul
    SolverSolve
     
    End Sub
    Je pense que c'est un bon point d'entrée pour appliquer le principe à ton fichier original.
    Juste une remarque, j'ai utilisé la fonction SolverAdd qui ajoute une contrainte au solveur même si elle existe déjà (donc au bout de 3 ou 4 éxécution ça devient la pagaille), il existe la fonction SolverChange qui permet de modifier les contraintes.

    En espérant que cela te sois utile.

  9. #9
    Membre du Club
    Homme Profil pro
    Ingénieur commercial
    Inscrit en
    Octobre 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur commercial

    Informations forums :
    Inscription : Octobre 2012
    Messages : 6
    Par défaut
    merci a vous LUCAS; ça marche T.Bien et j ai beaucoup apprécié. Quant au problème de cumul des contraintes du solveur il suffit de remettre a zéro au début du code par:


    SolverReset <----- 'remise a vide du solveur

    a bientôt

Discussions similaires

  1. Réponses: 2
    Dernier message: 15/09/2008, 23h12
  2. VB.net Fonction pour calculer les Percentiles ?
    Par Slumpy dans le forum VB.NET
    Réponses: 4
    Dernier message: 05/03/2008, 18h19
  3. algorithme pour calculer les fonctions trigo ?
    Par thomas0302 dans le forum Mathématiques
    Réponses: 3
    Dernier message: 24/12/2007, 22h44
  4. Recherche algo pour calculer les n°AR
    Par Barbibulle dans le forum Algorithmes et structures de données
    Réponses: 4
    Dernier message: 25/10/2007, 18h47
  5. Lire un fichier Excel pour modifier les valeurs des cellules
    Par Paloma dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 31/10/2006, 15h13

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