Rayne

asked on

# Read and Display formula Components

Hello All,

I have a VBA question :(

Not sure if this is possible or I am over thinking. Formula Cells in D8:D10 has some formulas that use components from range D15:D15. Now what I need (as I am dealing with 160 rows) is to list out the text names of the components in column F.

For example: if I loop through column D, and when my current cell is D10, I read its formula and then the corresponding F10 displays “ = (c1+c3+c4)/c4”

Is that possible?

Attached is example of the needed format…

Thank you

readAndDisplyFormulas.xlsx

I have a VBA question :(

Not sure if this is possible or I am over thinking. Formula Cells in D8:D10 has some formulas that use components from range D15:D15. Now what I need (as I am dealing with 160 rows) is to list out the text names of the components in column F.

For example: if I loop through column D, and when my current cell is D10, I read its formula and then the corresponding F10 displays “ = (c1+c3+c4)/c4”

Is that possible?

Attached is example of the needed format…

Thank you

readAndDisplyFormulas.xlsx

ASKER CERTIFIED SOLUTION

membership

Create an account to see this answer

Signing up is free. No credit card required.

Thanks, Rayne.

I'll keep any eye out!

*Will let you know if any questions*I'll keep any eye out!

ASKER

Hello Brian,

thanks for your Golden help....

For Each xCell In Range("F8:F10")

xCell = "'" & Replace(Replace(Replace(Replace(xCell.Offset(0, -2).Formula, "D15", Range("C15")), "D16", Range("C16")), "D17", Range("C17")), "D18", Range("C18"))

Next

Just wanted to confirm whats happening here? Can you explain whats happening in the replace?

Assuming my actual range for [xCell] is F8:F30, do I have to replicate the pieces for the 30th row in the replace string? in the for loop....

thank you :)

thanks for your Golden help....

For Each xCell In Range("F8:F10")

xCell = "'" & Replace(Replace(Replace(Re

Next

Just wanted to confirm whats happening here? Can you explain whats happening in the replace?

Assuming my actual range for [xCell] is F8:F30, do I have to replicate the pieces for the 30th row in the replace string? in the for loop....

thank you :)

ASKER

Let me know if there is more of a dynamic way, then I will open a up another separate question. No worries for points. :)

Rayne,

What happens to the "Component" table - is it simply moved down or is it elsewhere? Also, are you limited to a max of 4 components?

Thanks,

Brian.

What happens to the "Component" table - is it simply moved down or is it elsewhere? Also, are you limited to a max of 4 components?

Thanks,

Brian.

ASKER

Hello Brian,

Actually there are 18 components that will be used in the formulas :( F8:F30)

The components stay in the same cells (they dont move)

Actually there are 18 components that will be used in the formulas :( F8:F30)

The components stay in the same cells (they dont move)

Rayne,

The "converted" formulas are in F8 to F30, so surely the actual formulas are in D8 to D30 - which would blast through the second column of the Components table. So the table must be somewhere else - but where?!

Thanks,

Brian.

The "converted" formulas are in F8 to F30, so surely the actual formulas are in D8 to D30 - which would blast through the second column of the Components table. So the table must be somewhere else - but where?!

Thanks,

Brian.

ASKER

Brian,

Here is another question if you are interested

https://www.experts-exchange.com/questions/27980025/VBA-to-do-CalX.html

Thank you

Here is another question if you are interested

https://www.experts-exchange.com/questions/27980025/VBA-to-do-CalX.html

Thank you

ASKER

This works GOLD. I will keep looking at it and trying to understand. Will let you know if any questions