ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Worksheet Functions (https://www.excelbanter.com/excel-worksheet-functions/)
-   -   Converting a Formula stored as String to real Formula (https://www.excelbanter.com/excel-worksheet-functions/172894-converting-formula-stored-string-real-formula.html)

BlueD

Converting a Formula stored as String to real Formula
 
Hi,

I have a MS Access DB that export an excel sheet and in one of the
columns it has a formula stored as string with the little " ' " in
front of the " = " sign.

To convert it manually I select the range and run the text to columns.
But when I try it in a macro it doesn't work.

I have tried a code that looks like this:

For Each c In Range("J2:K5")
c.Formula = c.Value
Next c

or even

For Each c In Range("J2:K5")
c.Formula = Right(c.Value, -1 + Len(c.Value))
Next c


being that the value of the cell is printed in the debug as:
=SE(ÉNÚM(LOCALIZAR("#";BLP("c Equity";"ID_SEDOL1")));"";BLP("c
Equity";"ID_SEDOL1"))

when I select the same cell on excel I see:
'=SE(ÉNÚM(LOCALIZAR("#";BLP("c Equity";"ID_SEDOL1")));"";BLP("c
Equity";"ID_SEDOL1"))

in the first case I keep with the same formula stored as string.
In the second case I crop part of my formula, but it keeps it as
string.


Does any one have a clue on how to work around.

thank you,

Mike H

Converting a Formula stored as String to real Formula
 
Hi,

Change the range to suit and try this

Sub changetoformula()
Set myrange = Range("A1:a100")
For Each c In myrange
If c.HasFormula = False Then
c.Formula = c.Value
End If
Next
End Sub

Mike

"BlueD" wrote:

Hi,

I have a MS Access DB that export an excel sheet and in one of the
columns it has a formula stored as string with the little " ' " in
front of the " = " sign.

To convert it manually I select the range and run the text to columns.
But when I try it in a macro it doesn't work.

I have tried a code that looks like this:

For Each c In Range("J2:K5")
c.Formula = c.Value
Next c

or even

For Each c In Range("J2:K5")
c.Formula = Right(c.Value, -1 + Len(c.Value))
Next c


being that the value of the cell is printed in the debug as:
=SE(ÉNÚM(LOCALIZAR("#";BLP("c Equity";"ID_SEDOL1")));"";BLP("c
Equity";"ID_SEDOL1"))

when I select the same cell on excel I see:
'=SE(ÉNÚM(LOCALIZAR("#";BLP("c Equity";"ID_SEDOL1")));"";BLP("c
Equity";"ID_SEDOL1"))

in the first case I keep with the same formula stored as string.
In the second case I crop part of my formula, but it keeps it as
string.


Does any one have a clue on how to work around.

thank you,


Gord Dibben

Converting a Formula stored as String to real Formula
 
Sub Change()
For Each c In Range("J5:K17")
c.NumberFormat = "General"
c.Formula = c.Value
Next c
End Sub


Gord Dibben MS Excel MVP

On Mon, 14 Jan 2008 04:18:36 -0800 (PST), BlueD wrote:

Hi,

I have a MS Access DB that export an excel sheet and in one of the
columns it has a formula stored as string with the little " ' " in
front of the " = " sign.

To convert it manually I select the range and run the text to columns.
But when I try it in a macro it doesn't work.

I have tried a code that looks like this:

For Each c In Range("J2:K5")
c.Formula = c.Value
Next c

or even

For Each c In Range("J2:K5")
c.Formula = Right(c.Value, -1 + Len(c.Value))
Next c


being that the value of the cell is printed in the debug as:
=SE(ÉNÚM(LOCALIZAR("#";BLP("c Equity";"ID_SEDOL1")));"";BLP("c
Equity";"ID_SEDOL1"))

when I select the same cell on excel I see:
'=SE(ÉNÚM(LOCALIZAR("#";BLP("c Equity";"ID_SEDOL1")));"";BLP("c
Equity";"ID_SEDOL1"))

in the first case I keep with the same formula stored as string.
In the second case I crop part of my formula, but it keeps it as
string.


Does any one have a clue on how to work around.

thank you,



JP[_4_]

Converting a Formula stored as String to real Formula
 
How about

Sub fixformulas()

Dim cell As Excel.Range
For Each cell In Selection
cell = "=" & Right(cell, Len(cell) - 1)
Next cell

End Sub

Highlight the offending data and run. Crude but effective.

HTH,
JP

On Jan 14, 7:18*am, BlueD wrote:
Hi,

I have a MS Access DB that export an excel sheet and in one of the
columns it has a formula stored as string with the little " ' " in
front of the " = " sign.

To convert it manually I select the range and run the text to columns.
But when I try it in a macro it doesn't work.

I have tried a code that looks like this:

For Each c In Range("J2:K5")
* c.Formula = c.Value
Next c

or even

For Each c In Range("J2:K5")
* c.Formula = Right(c.Value, -1 + Len(c.Value))
Next c

being that the value of the cell is printed in the debug as:
=SE(ÉNÚM(LOCALIZAR("#";BLP("c Equity";"ID_SEDOL1")));"";BLP("c
Equity";"ID_SEDOL1"))

when I select the same cell on excel I see:
'=SE(ÉNÚM(LOCALIZAR("#";BLP("c Equity";"ID_SEDOL1")));"";BLP("c
Equity";"ID_SEDOL1"))

in the first case I keep with the same formula stored as string.
In the second case I crop part of my formula, but it keeps it as
string.

Does any one have a clue on how to work around.

thank you,




All times are GMT +1. The time now is 11:51 PM.

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