PC Review


Reply
Thread Tools Rate Thread

How to evaluate a string as a formula?

 
 
zhaoning.zju@gmail.com
Guest
Posts: n/a
 
      15th Mar 2006
Hi all,
I am going to write a string formula (without "=") in a cell, e.g.
(A1+B1)/2 in C1. And I want the cell C2 to display the value of the
formula in C1.
To be concrete, let's take an example as follows:
In a sheet, I write:
110 in A1,
90 in A2,
(A1+A2)/2 in C1.
What formula shall I write in cell C2 to get a value of 100, and get a
value of 50 when C1 is changed to (A1+A2)/4?
Thanks!

 
Reply With Quote
 
 
 
 
Raman
Guest
Posts: n/a
 
      15th Mar 2006
Be more specific
You could enter the same formula
It is not possible in excel to write a function without =
You could use the tools-options-transition-transition formula entry
option to use excel as a virtual calculator

 
Reply With Quote
 
Ron Rosenfeld
Guest
Posts: n/a
 
      15th Mar 2006
On 14 Mar 2006 18:44:12 -0800, "(E-Mail Removed)"
<(E-Mail Removed)> wrote:

>Hi all,
>I am going to write a string formula (without "=") in a cell, e.g.
>(A1+B1)/2 in C1. And I want the cell C2 to display the value of the
>formula in C1.
>To be concrete, let's take an example as follows:
>In a sheet, I write:
>110 in A1,
>90 in A2,
>(A1+A2)/2 in C1.
>What formula shall I write in cell C2 to get a value of 100, and get a
>value of 50 when C1 is changed to (A1+A2)/4?
>Thanks!


You will need to use VBA in order to do this.

<alt-F11> opens the VB Editor.

Ensure your project is highlighted in the project explorer window, then select
Insert/Module from the top menu and enter the code below into the window that
opens.

Then, in C2, enter the formula: =Eval(C1)

=====================
Function Eval(rg As Range)
Application.Volatile
Eval = Evaluate(rg.Text)
End Function
======================



--ron
 
Reply With Quote
 
bplumhoff@gmail.com
Guest
Posts: n/a
 
      15th Mar 2006
Hello,

you might want to use the VBA function EVAL() shown at
http://www.decisionmodels.com/calcsecretsh.htm

Another approach is shown at
http://www.sulprobil.com/html/it_quality.html

HTH,
Bernd

 
Reply With Quote
 
=?Utf-8?B?RmluZGVv?=
Guest
Posts: n/a
 
      15th Mar 2006
With the cursor in C2, for example, Insert-Define-Name: "Formul" (or what u
want),
and , in "Refers to" introduce =EVALUATE(C1), and Accept.

Once in the sheet again in C2 put
=Formul (the name previoiusly defined) and u can modify the formula in C1
that you obtain the result in C2.

Hope this helps
--
FindeO


"(E-Mail Removed)" escribió:

> Hi all,
> I am going to write a string formula (without "=") in a cell, e.g.
> (A1+B1)/2 in C1. And I want the cell C2 to display the value of the
> formula in C1.
> To be concrete, let's take an example as follows:
> In a sheet, I write:
> 110 in A1,
> 90 in A2,
> (A1+A2)/2 in C1.
> What formula shall I write in cell C2 to get a value of 100, and get a
> value of 50 when C1 is changed to (A1+A2)/4?
> Thanks!
>
>

 
Reply With Quote
 
zhaoning.zju@gmail.com
Guest
Posts: n/a
 
      20th Mar 2006
Thanks, I think the method you provided is exactly what I want. But
when I did it that way, it showed me a "#NAME?" in C2. What's the
problem?

 
Reply With Quote
 
Peo Sjoblom
Guest
Posts: n/a
 
      20th Mar 2006
Did you do this part?

"You will need to use VBA in order to do this.

<alt-F11> opens the VB Editor.

Ensure your project is highlighted in the project explorer window, then
select
Insert/Module from the top menu and enter the code below into the window
that
opens."

--

Regards,

Peo Sjoblom

Northwest Excel Solutions

www.nwexcelsolutions.com

(remove ^^ from email address)

Portland, Oregon




<(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
> Thanks, I think the method you provided is exactly what I want. But
> when I did it that way, it showed me a "#NAME?" in C2. What's the
> problem?
>


 
Reply With Quote
 
Ron Rosenfeld
Guest
Posts: n/a
 
      20th Mar 2006
On 19 Mar 2006 19:23:40 -0800, "(E-Mail Removed)"
<(E-Mail Removed)> wrote:

>Thanks, I think the method you provided is exactly what I want. But
>when I did it that way, it showed me a "#NAME?" in C2. What's the
>problem?


Post back, by copying exactly (Edit/Copy) exactly what you entered into the VB
Editor and exactly what you entered as a formula.


--ron
 
Reply With Quote
 
zhaoning.zju@gmail.com
Guest
Posts: n/a
 
      21st Mar 2006
In VBA module, I wrote(actually copied your code):
Function Eval(rg As Range)
Application.Volatile
Eval = Evaluate(rg.Text)
End Function

In the worksheet, cell C1, I wrote:
(A1+A2)/2

In cell C2, I wrote:
=eval(C1)

And I am sure that the VBA module is under the same project with the
workbook.

Ron Rosenfeld wrote:
> On 19 Mar 2006 19:23:40 -0800, "(E-Mail Removed)"
> <(E-Mail Removed)> wrote:
>
> >Thanks, I think the method you provided is exactly what I want. But
> >when I did it that way, it showed me a "#NAME?" in C2. What's the
> >problem?

>
> Post back, by copying exactly (Edit/Copy) exactly what you entered into the VB
> Editor and exactly what you entered as a formula.
>
>
> --ron


 
Reply With Quote
 
TKT-Tang
Guest
Posts: n/a
 
      21st Mar 2006
Have you not referred to the (ubiquitous) EEE letters located at
J-Walk's Excel web-site ?

Regards.

 
Reply With Quote
 
 
 
Reply

Thread Tools
Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Evaluate text string as formula AshMorK Microsoft Excel Programming 1 22nd Jul 2008 09:18 PM
Evaluate string as a formula peacelittleone Microsoft Excel Worksheet Functions 3 26th Jun 2005 07:20 PM
how to evaluate the content of a string as if it was a formula cyrille de brébisson Microsoft Excel Misc 5 6th Dec 2004 11:47 PM
VBA Function to evaluate hlookup text string as formula Eric Microsoft Excel Programming 2 2nd Aug 2004 05:57 PM
Evaluate a string TJS Microsoft ASP .NET 5 23rd May 2004 05:08 AM


Features
 

Advertising
 

Newsgroups
 


All times are GMT +1. The time now is 10:32 AM.