bonjour,
je suis debutant en VB.net et je cherche l'equivalent de la procedure "eval"
en vb.net.Car cette procedure en VBA marche bien et en VB.net ca ne marche pas.donc je voudrais savoir son equivalent en VB.net
marci de votre aide
bonjour,
je suis debutant en VB.net et je cherche l'equivalent de la procedure "eval"
en vb.net.Car cette procedure en VBA marche bien et en VB.net ca ne marche pas.donc je voudrais savoir son equivalent en VB.net
marci de votre aide
et que fait "eval" en vba ?
eval est une procedure qui realise la procedure entre parenthse mais j'aarive pas a faire ca en VB.net.en sachant que pour tes petites operations comme
eval(2+2) ca marche mais pour des choses plus gros comme eval(left quleque chose) ca marche.je suis desole si je m'exprime mal.
exusez moi je mexprime vraiment mal,
je voulais dire que eval est une procedure qui realise la fonction entre parenthse ou proc.pour des petites operations ca marche mais pour des grosses ca marche pas comme Eval(rowAnomalie("CodeAnomalie")) ca ne marche pas.
Bonjour.
Certes, l'équivalent n'existe pas, mais il y a un philanthrope qui a codé et mis à dispo un truc assez sympa :
http://www.codeproject.com/useritems..._Evaluator.asp
Cdt.
ca a lair d'une fonction assez sympa.merci pour votre aide.
voila ce que je veux faire:
créer une fonction eval qui par exemple lorsqu'on tape:
eval(left"toto tata") nous renvoie toto.donc une fonction qui traite la fonction entre parenthese.cette fonction existe en VBA et ca sapelle d'ailleurs eval mais elle ne marche pas en VB.net,elle ne marche que pour des oprations comme (1+1).aidez moi s'il vous plait.
microsoft.visualbasic.left("toto tata", 4) renverra "toto"
pas besoin de réinventer la poudre
oui pour cett example on peut faire comme ca, mais moi j'ai besoin d'un truc plus general,de sorte que lorsque je fais eval( une fonction) ca puisse marcher,peut etre que je pose des questions bete mais c'est que mon deusimee jour de vb.net.
quel est le but final ?
écrire ton code ou que l'utilisateur puisse créer des fonction
si c'est pour écrire ton code, ne cherches pas une fonction générique et utilise que ce qu'il faut à chaque fois
le but en fait c que l'utilisateur va ecrire juste eval(la fonction) pour n'importe quel fonction,et que eval va traiter la fonction entre parentese.
la technique de passer par sqlserver est valable quand meme
il faut reformater un peu avec du replace() mais au moins ca te fait peu de code à écrire
le but ce et eval(fonction) c'est l'utilisateur puisse parametrer cette fonction qui sera deja existante.peut etre que c'est plus clair mainetant.merci pour votre aide.
réponds moi que t'as pas de base de données sous la main et j'arrete de t'embeter avec ca
mais ca marche, j'avais fait un truc utilisant ca à l'époque ou j'etais sur vb6
une formule tapée par l'utilisateur que je remaniait ensuite pour qu'sql server la comprenne et lui il me l'executait, il sais faire toutes les opérations mathématiques ou opérations sur chaines (left, right, substring ...) et l'avantage c'est que c'est un langage compilé à la volée donc tu l'envoies en style interprété
juste pour voir si jai bien compri:tu reprends la fonction ka paramtre un utilisateur et que tu la remanie,je sais que je suis un peu chiant mais esque tu peux etre un peu plus clair ou m'envoyer un code ki fait ca,je suis encore debutant donc jai du mal a comprendre.ca fait qu'une semaine que je fais du .net.en tous cas je te remercei beaucoup pour ton aide.
tu dis à l'utilisateur ce qu'il a le droit de taper, tu définis donc un norme
ensuite s'il a tapé gauche("blabla",3)
tu stockes ce qu'il a tapé dans var_fct
var_fct = replace (var_fct , """"" , "'") ' sql server utilise ' au lieu de "
var_fct = replace (var_fct , "gauche" , "left")
et à la fin de tes replaces tu fais sql_objet = "select " & var_fct & " from table"
je crois que le from est obligatoire meme si le select ne porte pas dessus ...
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager