ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   extract formula result form cell without running formula again (https://www.excelbanter.com/excel-programming/432114-re-extract-formula-result-form-cell-without-running-formula-again.html)

jason

extract formula result form cell without running formula again
 
On Aug 6, 2:40*pm, jason wrote:
hello,
i have a routine that outputs a very long routing into a cell.
i want to then take this result and make use of it in another
calculation.
how can i take the resulting value without executing the entire
function again?
thanks!


** in vba.
so basically
cells(1,1)=routine()

cells(1,2)=cells(1,1) +1 (for example)

i tried .value and .evaluate with no luck.

Ron Rosenfeld

extract formula result form cell without running formula again
 
On Thu, 6 Aug 2009 11:41:41 -0700 (PDT), jason wrote:

On Aug 6, 2:40*pm, jason wrote:
hello,
i have a routine that outputs a very long routing into a cell.
i want to then take this result and make use of it in another
calculation.
how can i take the resulting value without executing the entire
function again?
thanks!


** in vba.
so basically
cells(1,1)=routine()

cells(1,2)=cells(1,1) +1 (for example)

i tried .value and .evaluate with no luck.


Without your posting your code, I would think that

cells(1,2).value = cells(1,1).value + 1

should work.
--ron

Ron Rosenfeld

extract formula result form cell without running formula again
 
On Thu, 6 Aug 2009 11:41:41 -0700 (PDT), jason wrote:

On Aug 6, 2:40*pm, jason wrote:
hello,
i have a routine that outputs a very long routing into a cell.
i want to then take this result and make use of it in another
calculation.
how can i take the resulting value without executing the entire
function again?
thanks!


** in vba.
so basically
cells(1,1)=routine()

cells(1,2)=cells(1,1) +1 (for example)

i tried .value and .evaluate with no luck.


To expand on what I just wrote, whether you can do this or not may depend on
information you have not shared with us.

For example, if you are trying to do this as part of a VBA Function, it will
not work as a function can only output a value. I have assumed you have done
this as part of a macro (Sub) since I have assumed that a "very long routing"
means some kind of formula that you have placed into cells(1,1).

That being the case, there may be more efficient ways of solving your entire
problem.
--ron

jason

extract formula result form cell without running formula again
 
On Aug 6, 4:38*pm, Ron Rosenfeld wrote:
On Thu, 6 Aug 2009 11:41:41 -0700 (PDT), jason wrote:
On Aug 6, 2:40*pm, jason wrote:
hello,
i have a routine that outputs a very long routing into a cell.
i want to then take this result and make use of it in another
calculation.
how can i take the resulting value without executing the entire
function again?
thanks!


** in vba.
so basically
cells(1,1)=routine()


cells(1,2)=cells(1,1) +1 (for example)


i tried .value and .evaluate with no luck.


To expand on what I just wrote, whether you can do this or not may depend on
information you have not shared with us.

For example, if you are trying to do this as part of a VBA Function, it will
not work as a function can only output a value. *I have assumed you have done
this as part of a macro (Sub) since I have assumed that a "very long routing"
means some kind of formula that you have placed into cells(1,1).

That being the case, there may be more efficient ways of solving your entire
problem.
--ron- Hide quoted text -

- Show quoted text -


ron,
thanks for taking the time.
i realize how trivial the question seems.
basically:

cells(1,1)=4/8/2009
cells(1,1).numberformat="m/d/yy;@"
cells(1,1) [DISPLAYS] 4/8/09
i want to extract JUST 4/8/09
not 4/8/2009

this is my issue.
i've tried .text and .value

not sure, but any help would be huge.
thanks

Ron Rosenfeld

extract formula result form cell without running formula again
 
On Tue, 11 Aug 2009 09:54:04 -0700 (PDT), jason
wrote:

ron,
thanks for taking the time.
i realize how trivial the question seems.
basically:

cells(1,1)=4/8/2009
cells(1,1).numberformat="m/d/yy;@"
cells(1,1) [DISPLAYS] 4/8/09
i want to extract JUST 4/8/09
not 4/8/2009

this is my issue.
i've tried .text and .value

not sure, but any help would be huge.
thanks


I'm probably still not understanding what it is you want to do, but your
example is simple enough.

If you want to extract the result as Excel has formatted it, merely use the
..text property.

e.g:

=========================
ption Explicit
Sub foo()
Dim s As String
With Cells(1, 1)
.Value = DateSerial(2009, 4, 8)
.NumberFormat = "m/d/yy;@"
End With
s = Cells(1, 1).Text
Debug.Print s
End Sub
==============================

The immediate window will show 4/8/09
--ron


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

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
ExcelBanter.com