Bonjour à tous,
Voila quelques jours que je galère à réaliser quelque chose qui me semble pourtant si simple à la base...
J'ai un très gros fichier de références à gérer. Chaque référence est applicable ou non à un projet en fonction d'une formule (parfois simple, souvent complexe). Cette formule étant composée de fonctions logiques type AND, NOT, OR... j’aurais aimé calculer le booléen de sortie en fonction du filtre projet sélectionné...
Exemple:
Besoin 01 :
- formule d'applicabilité => (Banane OR Raisin OR Carrotte) AND Poire AND (Pomme OR Tomate) AND NOT Fraise AND NOT Poireau
- formule binaire => (0 OR 1 OR 0) AND 1 AND (1 OR 0) AND NOT 0 AND NOT 0
Mon besoin c'est de calculer la sortie de cette formule.
Quand je rentre à la main cette formule en tant qu’instruction dans vba ça me donne exactement ce que je souhaite le problème c'est que la formule binaire est de type "string". Des références j'en ai des milliers.
Pour un besoin, la formule d'applicabilité est fixe, la formule binaire résulte du passage dans une matrice et donc varie en fonction d'un inducteur "projet".
J'ai tenté de convertir la chaîne de caractères (formule binaire) en remplaçant les AND et les NOT et les OR par des opérateurs mathématiques mais ça ne marche pas dans tous les cas. (des cas complexes genre doubles parenthèses, AND NOT...)
Existe t-il une technique pour convertir une variable de type string en instruction? En lisant certains post je crois comprendre que le codage dynamique est pas simple et j'ai peur d’être au delà de mes maigres connaissances.
d'avance merci pour votre aide.
manu
Partager