Rechercher et executer une formule

  • Initiateur de la discussion FILOO
  • Date de début
F

FILOO

Guest
Salut à vous !!

J'ai pris la décision de vous soumettre mon problème avant d'avoir fini de m'arracher les desrniers cheveux de mon crâne meurtri....

J'ai joint, un petit fichier qui ré-explique tout, avec un exemple de mon pb.

Je souhaite effectuer une recherche, dans un tableau, paramétrée par un choix... jusque là ça va...
Par contre je souhaite récupérer en réponse une formule de calcul...là ça se complique...pour exécuter cette formule et obtenir le résultat.

En effet, je n'arrive pas à:

-soit saisir convenablement ma formule dans sa base de donnée
-soit l'appeler correctement.

Merci par avance de votre aide

XLDiennes, XLDiens

Salutations [file name=Classeur2_20050321104308.zip size=3302]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Classeur2_20050321104308.zip[/file]
 

Pièces jointes

  • Classeur2_20050321104308.zip
    3.2 KB · Affichages: 28

Robert

XLDnaute Barbatruc
Repose en paix
Re:Rechercher et executer une formule RB

Bonjour Filoo, bonjour le forum,

Je ne suis pas sûr d'avoir bien compris. Alors voilà ce que je te propose:
si le choix est A ou C alors la formule est 3 * la valeur fixe + donnée saisie.
si le choix est B ou D alors la formules est la valeur fixe + la donnée saisie (tu n'as pas été très explicite sur cette deuxième fonction ou c'est moi qui n'ai pas bien compris...)

Attention j'ai nommé la plage A2:C5 'Tab1' !
Je n'ai pas utilisé le tableau 2, j'ai directement tapé la formule en C16 (tableau 3)


=SI(A16='';'';SI(OU(A16='A';A16='C');(3*RECHERCHEV(A16;Tab1;2;FAUX))+B16;RECHERCHEV(A16;Tab1;2;FAUX)+B16))
puis je l'ai recopiée jusqu'à C22.

Message édité par: Robert, à: 21/03/2005 12:02
 
F

FILOO

Guest
Re:Rechercher et executer une formule RB

Merci pour ton aide Robert, et en effet, je n'ai pas dû être assé explicite...

Ta solution ne me convient pas pour les raisons suivantes :

-Dans cet exemple il n'ya que deux formules différentes (l'utilisation de ta fonction est donc appropriée), mais dans la réalité j'en ai au minimum une dizaine de formules différentes pour une même colonne ....c'est pourquoi j'ai besoin d'avoir un tableau ou je pourrais retrouver mes formules pour pouvoir les retrouver et les modifier facilement....

En fait mon idée de départ était de saisir dans le tableau2 / colonne Formule, mes formules du types :
N°1 : '=3*valeur+donee' ,
N°2 : '=valeur+donee'.

Puis d'appeler et d'executer ces formules dans ma colonne résultat de mon tableau3.

J'ai bien essayé avec une forme matricielle, mais j'obtient le calcul de la première ligne de mes matrices...

dsl c encore pas très clair mais j'ai mis mon exemple sus-cité dans un second classeur zippé en pièce jointe....

Merci pour tout néanmoins, c vraiment sympa de prendre du temps pour m'aider !!


[file name=Classeur2_20050321143952.zip size=3655]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Classeur2_20050321143952.zip[/file]
 

Pièces jointes

  • Classeur2_20050321143952.zip
    3.6 KB · Affichages: 20

JCA06

XLDnaute Occasionnel
Re:Rechercher et executer une formule RB

Bonjour Filoo,

J'ai peu de temps à te consacrer, mais je te livre tout de même mes idées :
- tu peux peut-être utiliser un tableau de coef associés à tes variables : pour tes 10 formules en ligne, et en colonne le coef de variable :
Exemple : ligne 1 coef de la variable valeur = 3 et coef de donnee = 1 et trosième variable = 0
ligne 2 : coef de variable = 1 et donnee = 1, et troisième variable 0

- autre solution : en nommant les formules avec des lettres : la lettre A correspondrait à la formule 3*valeur+donnee; B à la formule valeur+donnee, ...

Je suis sûr de ne pas être clair et je reviendrai plus tard voir si le schmilblik a avancé.

A plus.
 
F

FILOO Le dépité...

Guest
Re:Rechercher et executer une formule RB

Salut salut....

chui dépité.....


Merci JC pour tes conseils, ils m'aideront certainement....mais je vois pas trop comment sur le problème de ce fil ....

J'ai besoin :

-d'avoir des formules sous la forme : =Valeur + Paramètre ou Valeur / Paramètre ... ou tout autre combinaison linéaire mais avec des noms d'étiquettes en sommes.... facile pour l'utilisateur de retrouver ces petits (surtout quand la formule fait deux mètres de long avec 5 paramètres variables et 10 fixé par le choix dans la colonne1)...

-mon 2nd besoin est d'avoir une Base de données de ces formules, les avoir dans un tableau quoi, car je vais en avoir tout pleins et il ne faut pas à avoir à les reprendre ligne par ligne à chaque fois qu'il y a une modif à faire, un nouveau paramètre à prendre en compte... ce qui serait le cas avec une formule pleine de SI(formule de type 1;...SI(Formule de type x...)

-mon 3eme besoin, celui qui coince, est de pouvoir aller chercher ces formules et de les exécuter....(trivial)
 
F

Filoo fin de journée = moin dépité

Guest
Re:Rechercher et executer une formule RB

Ci-joint le petit fichier zippé qui illustre ce post ... il apporte pas grand choz de plus que les précédents, peut-être plus clair? j'ose espéré...

En tout cas je crois avoir spécifié tout ce dont j'avais besoin... et chui gourmand moi !! m'en faut toujours PLUS !!!

hum dsl

:eek:

Dans tout les cas, merci à vous JC et Robert d'avoir pris du temps. Si ce post n'aboutit pas, je reformulerai sur un autre post ma problématique avec un cas général.

Mais pour l'heure, FILOO GOES HOME !!

Encore merci, bonne soirée à tous !!

A bientôt
Zai jian! [file name=Classeur2_20050321172053.zip size=3200]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Classeur2_20050321172053.zip[/file]
 

Pièces jointes

  • Classeur2_20050321172053.zip
    3.1 KB · Affichages: 25

JCA06

XLDnaute Occasionnel
Re:Rechercher et executer une formule RB

Eureka !

J'ai trouvé !

En fait, je suis parti sur la piste des formules nommées que j'ai définies de la façon suivante :
- en me plaçant en E10 : FUN =3*INDEX(Feuil2!$B$2:$B$5;EQUIV(Feuil2!$A10;Feuil2!$A$2:$A$5;0);1)+Feuil2!$B10
- en me plaçant en E11 : FDEUX =INDEX(Feuil2!$B$2:$B$5;EQUIV(Feuil2!$A10;Feuil2!$A$2:$A$5;0);1)+Feuil2!$B10

J'ai nommé ces formules FUN, FDEUX car les noms 'F1' et 'F2' ne sont pas valables du fait qu'il s'agit de référence de formule.

Mais ensuite, comme le nom de formule à utiliser était variable, j'ai eu du mal...
J'ai tout de même trouvé une fonction qui t'autorise une liste de 29 formules : la fonction CHOISIR que j'ai testée avec les 2 formules que tu donnais.
Ainsi, E10 devient : =CHOISIR(D10;FUN;FDEUX)
que tu peux recopier en E11, etc.
Il te reste à définir tes fonctions FTROIS, FQUATRE,.. et à modifier ta fonction CHOISIR :
=CHOISIR(D10;FUN;FDEUX;FTROIS;...)

Il y a certainement d'autre possibilités, mais celle-ci fonctionne !
 
F

FILOO

Guest
Re:Rechercher et executer une formule RB

Haloa XLDiens !

Un grand merci à toi JCA06 pour ton coup de pouce ! :)

Ta solution me convient ....

Tu vas peut-être me trouver casse-c..... mais je souhaiterais vraiment savoir s'il est possible de réaliser ces formules de calcul avec mes noms d'étiquettes, à savoir =3*valeur + parametre, par exemple... car je dans mon cas pratique je vais devoir jongler avec un nombre importants de paramètres et autres valeurs fixes.... et ces étiquettes sont vraiment pratiques.

Par ailleur j'utilise XL2003 (pas pour mon exemple zippé, dsl) et une des nouvelle fonctionnalité au taquet est de pouvoir créer des listes évolutives: on rajoute un élément en queue dans la liste , et elle s'allonge automatiquement... ainsi que l'étiquette.

Très pratique pour mon cas : Si je rajoute une formule dans mon tableau (ou un paramètre, ou une valeur, ou un type...) il serait automatiquement pris en considération dans mes formules.... mais ça n'est possible que si j'utilise ces étiquettes dans mes formules !!

Néanmoins, je te suis gré de ton aide... et peut-être que ma solution viendra d'une combinaison de tous ces artifices !!

Bonne journée !!
A charge de revanche!!
 
F

Filoo toujours pas YouKy

Guest
Re:Rechercher et executer une formule RB

Bonjour,

J'aitrouvé comme un grand YouKy tout seul comment faire pour que mes formules avec des étiquettes fonctionnent....
Comme ce problème passionne les foules, je vous donne le truc :

Outils / Options / Calcul puis cocher 'Accepter les étiquettes dans les formules'.

Et c'est plus cool que Index() car je nomme chaque colonne (par exemple Liste1, liste2...), puis j'écris ma formule : = liste1 * Liste2 /Liste3 .... que j'étire.
Et le calcul s'effectue ligne par ligne...même si mes liste 1,2,3... sont des plages de X lignes.

Néanmoins mon problème reste d'actualité...
Soit je stock mes formules sous la forme Liste1*Liste2... mais sans écrire le signe = devant et dans ce cas lorsque je les appelles, XL me renvoi....Liste1*Liste2... soit un texte (logique)
Soit je les stock dans mon tableau avec le signe = devant et dans ce cas les formules sont actives et renvoi #Valeur (logique aussi) et lorsque je les appelles ... le renvoi est aussi #Valeur ... la formule n'est pas ré-activée.........J'arrive toujours pas à être clair alors cf. L'exemple ci-joint..... :unsure:

Merci

Le YouKy désepéré [file name=Classeur1_20050325112955.zip size=3362]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Classeur1_20050325112955.zip[/file]
 

Pièces jointes

  • Classeur1_20050325112955.zip
    3.3 KB · Affichages: 29
F

Filoo toujours pas YouKy

Guest
Re:Rechercher et executer une formule RB

Bonjour le forum !

Ce problème serait-il insurmontable pour le Forum ?

Moi j'ai Foi en Lui (le Forum...)....

Personelement j'i une solution (vraiment bidon, mais qui marcherai):

Multiplier mes colonnes et effectuer chaque type de formule, puis choisir d'afficher le résultat du calcul correspondant au type choisi... mais plus lourd tu meurs !!

Néanmoins, avec cette soluce, si je souhaite rajouter une nouvelle forme de calcul, je rajoute une colonne, si je souhaite modifier une forme de calcul, je modifi la colonne corespondante... mais ça este de la bidouille...


Alors si qq'un a une idée pour résoudre ce problème de stockage de formule/fonction dans un tableau que l'on appelle et éxécute dans un second tableau (cf. les exemples zippés) ...


Bonne journée chers XLDien, XLDiennes et autres espèces de tableuristes VBziens....


Filoo... toujours pas YouKy ... (encore une autre déception)
 
F

FILOO

Guest
Re:Rechercher et executer une formule RB

Salut à tous zé toutes

:unsure:

Please help

:(

Jsuis au bout du rouleau....

J'ai fait une macro spécial pour mon problème :

Sub KillFiloo()

declare Filoo as a YouKy

For Each Filoo(Problèmeàlacon) <> ''
Kill the YouKy
Until Filoo(Problèmeàlacon) = ''

End

mais même elle, elle veut pas marcher.... je comprends vraiment pas... ça vient de moi, c'est s&ucirc;r !! mais que faire?...

Bonne journée à vous...

Désespérément,
Le YouKy
 

andré

XLDnaute Barbatruc
Re:Rechercher et executer une formule RB

Salut,

Je n'ai pas suivi ce fil depuis le début, mais voici peut-être une piste :

Nommer les formules.
En cas de modification, il suffit de modifier à un seul endroit
Pour afficher les formules sous forme d'un tableau : menu Insertion / Nom / Définir / Coller / Coler une liste
Pour appeler une formule dans une cellule : F3 (touche clavier) / Sélectionner le nom par un double-click et Valider

Ândré.
 

Le YouKy

XLDnaute Nouveau
Re:Rechercher et executer une formule RB

bonjour André !

Merci de te pencher sur mon problème... je t'en suis reconnaissant !

J'ai essayé ta manip'... J'ai nommer mes formules 'Form1' , 'Form2' ... mais j'ai un problème de stockage : Comment stocker une formule dans un tableau en la laissant 'inactive', soit qu'elle ne renvoie pas de résultat ?

le problème c'est que si je ne met pas de '=' devant, XL la considère comme un texte... et quand je veux appeler ma formule, XL me renvoi...un texte! (logique implacable)

Si je mets un '=' devant ma formule dans son formulaaire, XL me renvoie une erreure type #Valeur, ce qui est logique car là o&ugrave; elle est ma formule ne peut être éxécutée!! seulement stokée...

Donc quand je l'appelle pour pouvoir l'éxécutée(la rendre active), XL me renvoi la valeur #Valeur... encore d'une logique implacable...

Si je suis pas clair c'est moi qui vous renvoi à mon exemlpe zippé!

Encore merci du coup de pouce !

El Youky [file name=Classeur2_20050330113519.zip size=3577]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Classeur2_20050330113519.zip[/file]
 

Pièces jointes

  • Classeur2_20050330113519.zip
    3.5 KB · Affichages: 34
M

mutzik

Guest
Re:Rechercher et executer une formule RB

Bonjour le fil, le forum, Le Youki pas youpi

te serais-t-il possible de nous dire pourquoi tu tiens à faire cet exercice de style. Je ne comprends pas ce à quoi ca peut servir. Peut etre tes explications nous serviront à te proposer une solution plus facile, moins contraignante ...

J'ai déja cherché mais je n'ai pas trouvé de réponse a ton prob.

Une éventuelle solution serait de créer une feuille par type de formule (why not ...)

@+
Bertrand
 

Le YouKy

XLDnaute Nouveau
Re:Rechercher et executer une formule RB

Salut mutzik (et pas plastic) Bertrand !

Je vais essayer d'expliquer l'intérêt de stocker des formules :

Dans mon cas concret (et pas l'exemple simplifié) je dois calculer des temps ('Résultats') d'opérations ('Types').
Ce calcul de temps peut être fait de différentes manières... selon l'opération, le type choisi.

La durée d'une opération d'usinage, d'un déplacement, d'une accélération de broche... ça reste une durée mais les formules sont complètement différentes !!

Néanmoins, beaucoup de 'types' ont une même formule pour le calcul de la durée (Résultat dans mon exemple).

Ces calculs prennent en comptes des données, qui sont fixes et stockées dans une base de données, comme par exemple une accélération, une vitesse max ou des temps partiels (un changement d'outil est composé d'un déplacement, du chargement de l'outil puis d'un déplacement... le temps de chargement de l'outil est fixe par exemple...)....

Calculs sont aussi fonctions de paramètres ('Valeurs'), un usinage se fait sur une course de X mm à telle vitesse de coupe....

Les formules utilisées doivent pouvoir évoluées, prendre en compte de nouveaux Paramètres, Données.... et dans ce but il est souhaitable pour les futurs utilisateurs de l'outil en construction que les formules ne soient pas imbitable de la forme :

SI(L(-455)C(45)<>...;$A$234=F$45*H67...)

Mais ressemblent plutôt à : (SI (Course>12 ; VitesseDeCoupe=Course*VitesseMax+...)

De plus, si 40 opérations ont une formule identique pour calculer une durée, il est plus facile de modifier 1 seule fois la formule dans un formulaire, que de chercher toutes les opérations, dans la base de données, utilisant cette formule et de les modifier une à une...

Le principal intérêt réside donc dans l'extrême facilité à faire évoluer le bouiboui... par des personnes qui manipulent XL comme le Youky tricote....

Si c pas possible avec des formules, j'vais devoir me coltiner une Macros pas piquées des hannetons... parce que j'en connais certains qui ont déjà du mal avec des formules toutes bébêtes.......alors aller bidouiller des macros!! S&ucirc;r que ça va leur plaire!! lol

Néanmoins, je commence à me faire à l'idée....

Encore merci en tout cas de te pencher sur ce problème, qui méritera d'être soumis à B.Gates pour XL 2006 !!

A bientôt

Salut à touszétoutes
 

Discussions similaires

Réponses
23
Affichages
2 K

Statistiques des forums

Discussions
312 859
Messages
2 092 904
Membres
105 559
dernier inscrit
Alain Poleszczuk