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 :

[EXCEL] Formule pour un système d'équation


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau membre du Club
    Inscrit en
    Septembre 2006
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 66
    Points : 30
    Points
    30
    Par défaut [EXCEL] Formule pour un système d'équation
    Bonjour tout le monde je cherche une petit formule pour me résoudre un système d équations avec 5 variables :

    A + B + C + D + E = Z

    J ai donc 5 colonnes, + 1 colonne qui est le résultat de l’ajout d’une variable des 5 colonnes précédentes (une valeur possible par colonne)

    A1 / B1 / C1….
    A2 / B2 / C2….
    A3 / B3 / C3…
    A4 / B4 / C4….
    …. …. Etc….

    Le but de la formule que je cherche, c’est de trier les valeurs qui vont ensemble, c est à dire qu’il y a une combinaison (simple addition) de variable (une variable par colonne soit : 5) qui nous donne un résultat qui est présent dans la colonne Z

    Par exemple j’aurai

    A3+B12+C1+D26+E1=Z13
    A8+B4+C38+D2+E5=Z2

    il n'est pas possible d'avoir : A8+A2+B1+C9+D5=Z5 (il faut une occurence dans chaqu'une des 5 colonnes)


    Si quelqu’un a une idée

  2. #2
    Membre habitué Avatar de conconbrr
    Inscrit en
    Février 2006
    Messages
    198
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 198
    Points : 198
    Points
    198
    Par défaut
    Cherche peut être un algo de résolution de système matriciel...
    A priori "il suffit" d'inverser ta matrice de coefficients (guillemets car l'algo est plus compliqué que ce qu'il n'y paraît mais bon des gens très gentil en on déjà faits donc profites en). Tu as plein de méthodes itératives pour résoudre ce genre de système. Si tu veux une solution au poil utilises le pivot de Gauss mais bon pas conseillé en info car trop lent.

  3. #3
    Membre régulier
    Profil pro
    Enseignant
    Inscrit en
    Août 2006
    Messages
    156
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Août 2006
    Messages : 156
    Points : 105
    Points
    105
    Par défaut
    Bonjour

    Il existe un logiciel de math "Derive" qui peut résoudre ton système d'équations à 5 inconnues! Sauf si ton plaisir réside dans la création d'un programme de math?
    J'utilise "Derive" parfois, et je trouve très bien (j'ai déjà essayé des systèmes à 14 inconnues avec succès!!!).
    Si tu es interessée par "Derive" voici un lien pour une démo :
    http://www.dynamaths.com/logiciels/c...derive-11.html
    Un tutoriel interessant sur "Derive":
    http://www.reunion.iufm.fr/recherche...ain_derive.htm

    Cordialement

  4. #4
    Nouveau membre du Club
    Inscrit en
    Septembre 2006
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 66
    Points : 30
    Points
    30
    Par défaut
    Mon but aurai été de faire une petite macro sous excel. Mais je ne suis pas sure que vous ayez compris, car en fait il n'y a pas d'inconnus toute les valeurs sont connus, il faut juste trouver quelle valeurs s'ajoute enter elles (entre les 5 colonnes, et une seul valeure par colonne) pour concorder avec une valeur de la colonne résultat. Aviez vous compris ça dans l’exposée de mon problème ?

  5. #5
    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
    Points : 15 543
    Points
    15 543
    Par défaut
    C'est bien ce que j'avais compris mais nous manquons d'éléments...
    - La somme de deux colonnes quelconques de gauche (parmi les 5) peut-elle correspondre à un Z de la colonne de droite ?
    - As-tu des zéros dans l'une ou l'autre colonne ?
    - Tu as combien de lignes de valeurs ?
    - Tes valeurs ont-elles une grandeur limite ?
    - L'une ou l'autre de ces valeurs peut-elle, à elle seule, être supérieure à tous les Z ?
    etc.
    Bref, face à ce nombre d'inconnues... je pense comme Lexot2, tu sembles bien avoir là un système d'équations à 5 inconnues...

  6. #6
    Nouveau membre du Club
    Inscrit en
    Septembre 2006
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 66
    Points : 30
    Points
    30
    Par défaut
    Il y aura forcement une valeure prise dans chaqu'une des 5 colonnes pour ensuite les ajoutées entre elles pour ensuite concordés avec un des résultats présents dans la colonne résultats (la colonne Z dans mon exemple)

    - Parcontre des valeures nul peuvent etre presente, dans les colonnes
    - le nombre de ligne de valeur sera variable, mais dans mon cas présent j ai 21 lignes. Soit 21 x 5 = 105 variables et 21 résultats

    Tes valeurs ont-elles une grandeur limite ?
    Je ne suis pas sure de comprendre ta question, mais dans mon cas j ai une échelle pour l ensemble de mes valeures de 0 -> 393115 (393115 faisant parti de ma colonne résultat)
    - L'une ou l'autre de ces valeurs peut-elle, à elle seule, être supérieure à tous les Z ?
    tu parle de la somme des Z ? je vois pas ou tu veux en venir en comparant une variable avec la somme des résultats, et pour répondre a cette question non ce n'est pas possible

  7. #7
    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
    Points : 15 543
    Points
    15 543
    Par défaut
    Citation Envoyé par Gerard6969
    Citation:
    - L'une ou l'autre de ces valeurs peut-elle, à elle seule, être supérieure à tous les Z ?


    tu parles de la somme des Z ? je vois pas ou tu veux en venir en comparant une variable avec la somme des résultats, et pour répondre a cette question non ce n'est pas possible
    Non, ma question est "est-il possible qu'aucun des Z ne soit supérieur à l'une des valeurs contenues dans l'une des cinq premières colonnes.
    Question subsidiaire : L'une des valeurs de tes cinq premières colonnes peut-elle être supérieure à un Z ?

  8. #8
    Nouveau membre du Club
    Inscrit en
    Septembre 2006
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 66
    Points : 30
    Points
    30
    Par défaut
    Heu non non,

    on pourrait avoir un cas

    54125 + 0 + 0 + 0 + 0 = 54125

    ceci serait un cas extreme, mais il n'est pas possible qu'une valeur d'une des 5 colonnes soit superieure a la valeur la plus élevé de la colonne Z

    Autre précision, il y a forcement une combinaison gagnante (combinaison: soit une addition d'une valeur de chaque colonne) pour chaque résultats, il y a toujours une solution.

  9. #9
    Membre habitué Avatar de conconbrr
    Inscrit en
    Février 2006
    Messages
    198
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 198
    Points : 198
    Points
    198
    Par défaut
    Alors moi je te propose de rentrer tes valeurs dans des tableaux VBA (un par colonne).
    Ensuite tu fais des boucles imbriquées (5 ici) pour tester tous les cas (ça risque de demander un peu de temps de calcul mais bon faut ce qui faut )
    La condition d'arrêt se produisant lorsque la somme des cinq valeurs vaut celle de la sixième.

    P.S:Une question : a quoi cela va-t-il servir si ce n'est pas indiscret?

  10. #10
    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
    Points : 15 543
    Points
    15 543
    Par défaut
    Citation Envoyé par conconbrrrr
    P.S:Une question : a quoi cela va-t-il servir si ce n'est pas indiscret?
    Tu connais les chiffres et les lettres

  11. #11
    Nouveau membre du Club
    Inscrit en
    Septembre 2006
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 66
    Points : 30
    Points
    30
    Par défaut
    oui ca peut être une solution, je vais quand même laisser le topic ouvert si quel qu'un a une solution exclusivement sous Excel.

    Sinon l'utilité de cette formule est pour retrouver le couple de variable avec un résultats donnée, en gros c est pour des statistiques sur des concurents qui me sont données. Et par rapport a la loi aucun nom n'est fixer. les seul donnée ou je peux fixer un nom (de mes concurrents) sont sur la colonne résultats, donc j essay de retrouver d'une maniere automatique: quel variable va avec quel variable ( qui represente la vente de produit par gamme soit 5 gammes)

    J'espere que je suis compréhensible

  12. #12
    Membre habitué Avatar de conconbrr
    Inscrit en
    Février 2006
    Messages
    198
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 198
    Points : 198
    Points
    198
    Par défaut
    Vi mais ma solution ne te convient pas ??

  13. #13
    Nouveau membre du Club
    Inscrit en
    Septembre 2006
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 66
    Points : 30
    Points
    30
    Par défaut
    Bas c'est une idée de solution mais je ne suis pas une brute en VBA, donc ca nécessite de se pencher dessus et de réfléchir a comment faire ses boucles, alors si une personne à une solution "plus simple" je ne dis pas non

    Mais je te remercie pour ta solution si je trouve rien d'autre faudra que je passe par ta solution et que je me penche un peu plus sur VBA

  14. #14
    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
    Points : 15 543
    Points
    15 543
    Par défaut
    Si tu ranges à l'idée des cinq boucles (et je n'en guère d'autre), lance ta procédure le soir, tu auras des chances d'avoir le résultat le lendemain.
    Ce qui me chagrine, avec les infos dont on dispose, c'est que je ne vois pas comment tu ne pourrais pas avoir plusieurs combinaisons de valeurs pour un même Z

  15. #15
    Membre habitué Avatar de conconbrr
    Inscrit en
    Février 2006
    Messages
    198
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 198
    Points : 198
    Points
    198
    Par défaut
    Ne soyons pas défaitisites non plus Si on désactive l'affichage ça peut se faire relativement vite.
    Je me suis amusé à faire une procédure résolvant les sudoku de manière un peu brutale (j'avais pas encore trop de connaissance en VBA à l'époque) dans laquelle j'ai plus de cinq boucles imbriquées et qui travaille sur une matrice 9x9 (81 cases du sudoku) et cela se fait presque immédiatement.

    Au niveau de tes connaissances ne t'inquiète pas c'est pas compliqué (on pourra t'aider si tu veux)

  16. #16
    Nouveau membre du Club
    Inscrit en
    Septembre 2006
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 66
    Points : 30
    Points
    30
    Par défaut
    Ce qui me chagrine, avec les infos dont on dispose, c'est que je ne vois pas comment tu ne pourrais pas avoir plusieurs combinaisons de valeurs pour un même Z
    Sa sa sera les aléas des variables que j'aurai dans mes 5 colonnes. Je refléchirais donc se weekend à votre solution puisqu'il semble ne pas y avoir d'autre solution

  17. #17
    Membre régulier
    Profil pro
    Enseignant
    Inscrit en
    Août 2006
    Messages
    156
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Août 2006
    Messages : 156
    Points : 105
    Points
    105
    Par défaut
    Bonjour

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
       A  B  C  D  E    Z
    1  3  6  5  7  5    25 
    2  7  1  0  1  8    10
    3  5  4  3  4  3    30
    4  2  0  9  8  4    20
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
       A  B  C  D  E    Z
    1  3  4  0  8  5    20 
    2  7  6  5  4  8    30
    3  5  1  9  7  3    25
    4  2  0  3  1  4    10
    Le 2nd tableau correspond au 1er tableau après le tri. J'ai pris comme exemple (modèle réduit) 4 lignes au lieu de 21, ma donnée max ne dépasse pas 9, et le résultat max = 30
    Cet exemple représente t'il ton problème?
    Peut-on trouver des valeurs identiques dans la même colonne?
    Faut-il ajouter A1+B3+C2+D4+E1=Z4?

    Cordialement

  18. #18
    Nouveau membre du Club
    Inscrit en
    Septembre 2006
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 66
    Points : 30
    Points
    30
    Par défaut
    Dans l'idée c'est tout a fait ce que je souhaite obetenir, sauf que l'ordre de grandeurs des valeurs est bien plus important(0->400 000 peut êter plus), mais je ne pense pas que cela soit un facteur contraignant !

    le nombre de ligne que j avais choisi était 21 mais il peut tres bien êter de 10 comme de 30 donc ton exemple a 4 ligne me va tout a fait.

    Peut-on trouver des valeurs identiques dans la même colonne?
    Oui il peut y avoir des variables identiques, sauf que chaque variable ne peut être utilisé qu'une seul fois. donc bien sure si on a deux variables identiques sa valeur sera donc utilisée deux fois !

    Faut-il ajouter A1+B3+C2+D4+E1=Z4?
    Dans l'absolu d'avoir le détails des celules aditionner serait le mieux mais bon si le tableau de résultat est trier aussi, ca devrait le faire aussi !

  19. #19
    Membre régulier
    Profil pro
    Enseignant
    Inscrit en
    Août 2006
    Messages
    156
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Août 2006
    Messages : 156
    Points : 105
    Points
    105
    Par défaut
    Bonjour

    Ton programme n'est pas trop compliqué, mais il faut du temps pour élaborer un code efficace. Tous les paramètres sont fixés. En prenant la colonne A (ou la colonne résultat) comme base, et en faisant 5 boucles imbriquées, ça marchera. Essaie de commencer un bout de code, et je viendrai de donner un coup de pouce.

    Cordialement

  20. #20
    Nouveau membre du Club
    Inscrit en
    Septembre 2006
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 66
    Points : 30
    Points
    30
    Par défaut
    C'est bien dans mes projets juste en semaine je suis un peu short pour faire du développement, donc je verais sa en weekend.
    De toute facon je ne peut pas faire ca avec des fonctions excel ?. (Passage en vba obligatoire pour faire un système de boucle ?)

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 3 123 DernièreDernière

Discussions similaires

  1. Réponses: 8
    Dernier message: 04/07/2015, 23h15
  2. [Toutes versions] Formule pour recuperer une valeur sur un autre fichier Excel
    Par bonilla dans le forum Excel
    Réponses: 2
    Dernier message: 26/06/2012, 11h19
  3. Algorithme de Runge-Kutta pour un système d'équations différentielles non linéaire
    Par lajoietristesse dans le forum Algorithmes et structures de données
    Réponses: 2
    Dernier message: 09/01/2012, 21h46
  4. [Excel] formule pour une liste déroulante
    Par marsupilami34 dans le forum Excel
    Réponses: 2
    Dernier message: 02/02/2007, 21h44
  5. [Excel] séparateur pour les fichiers csv
    Par drinkmilk dans le forum Excel
    Réponses: 2
    Dernier message: 27/08/2005, 14h21

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