Subscribe Bookmark RSS Feed

evaluating a string using a column formula?

jvillaumie

Community Trekker

Joined:

Jun 9, 2014

I have a column with strings, e.g.  20.5 + 1.18*1.61 - 0.0816*(1.61-1.85)^2 , and I would like to evaluate its value in a different column. I tried using eval() with the name of the column with the strings as argument, but it did not work: I simply get the string again, not the value of that string.

 

I am sure the strings can be evaluated, because I tried eval(20.5 + 1.18*1.61 - 0.0816*(1.61-1.85)^2 ) and it gave me a number as expected.

 

Is it possible to use a function to evaluate a column, and if so how? I am not looking for a JSL solution.

1 ACCEPTED SOLUTION

Accepted Solutions
melaniedrake

Staff

Joined:

May 30, 2014

Solution

Eval() works on your expression in a script editor because it's not a string there. In the column, it's a string. First you need to parse the string (which converts a string into a JSL expression), and then eval it. Try this for your column formula (Column 1 is the one with your strings):

 

Eval( Parse( :Column 1 ) )
2 REPLIES
melaniedrake

Staff

Joined:

May 30, 2014

Solution

Eval() works on your expression in a script editor because it's not a string there. In the column, it's a string. First you need to parse the string (which converts a string into a JSL expression), and then eval it. Try this for your column formula (Column 1 is the one with your strings):

 

Eval( Parse( :Column 1 ) )
jvillaumie

Community Trekker

Joined:

Jun 9, 2014

That worked; thanks for the quick reply