Execute dynamic VBA code just like docmd.runsql(SQLtext)

I am trying to make my app flexible and accept code on the fly.

I am using msaccess 2003 for the frontend and MS SQL2000 for the backend.  I compile all projects and the users run an *.ade file.

currently I create the dynamic code in T-SQL and execute it on the SQL server.  This as it is not secure and could crash with the wrong code.  I want to execute the code locally and/or use VBA code.

So basically I would like to create a string like:

str2Exec = "=iif(Value = 1, "S", "C")"

Then Replace the "Value" with a real number:

str2Exec = Replace(str2Exec, "Value", 1 )

Then finally exec the string and save the result

strResult = RunVBA(str2Exec)


Any ideas on how to execute this code on the fly?
ScottGutmanAsked:
Who is Participating?
 
dorbraxtonCommented:
Have you tried the Eval() function?
0
 
harfangCommented:
Hello,

If your strings contain only standard VB operators and built-in functions, you can use "Eval":

    ? Eval(Replace(" IIf(Value = 1, ""A"", ""B"") ", "Value", "13"))

Cheers!
(°v°)
0
 
ScottGutmanAuthor Commented:
exactly what i was looking for!!

Thanks
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.