Hey all,
I have a super puzzling question to put forward; I want to re-evaluate a cell after it has been transposed from one sheet to another, using a lookup function, the function method doesn't matter, be it; INDEX/MATCH, XLOOKUP or VLOOKUP, the catch is that the cell which the data is transposed into, needs to be able to use data from it's own sheet not the originating sheet.
For an example of how to put it into context of what I want to achieve;
I don't have any other methods for the cell to refer to itself, and as neither of these work as 'is', I can put this as a text string in the hopes I can force a function to re-evaluate the text string into a formula. However, there is no function to re-evaluate a cell; using methods such as SUBSTITUTE, LAMBDA, INDIRECT, and VBA modules designed to re-evaluate don't seem to re-evaluate the cell at all, or keeps it as a text string.
To get the full scope of what I'm trying to achieve these are my 2 sheets; TLDR;
I have a super puzzling question to put forward; I want to re-evaluate a cell after it has been transposed from one sheet to another, using a lookup function, the function method doesn't matter, be it; INDEX/MATCH, XLOOKUP or VLOOKUP, the catch is that the cell which the data is transposed into, needs to be able to use data from it's own sheet not the originating sheet.
For an example of how to put it into context of what I want to achieve;
- I have data in Sheet2, a prefilled table. One of the columns within that table contains a description of the way something works. Within that description are simple multiplicative formulas, data used in those formulas are derived from nearby columns in the same row, alongside data which is derived from Sheet1 which is a dynamic sheet of information.
- The data in Sheet1 which is used in the description of Sheet2 is dynamic and changes based on a selection that is made by selections and dropdowns. I need the description cell from Sheet2 to be present in Sheet1, which can be achieved using a the variety of lookup function, however I then need to that new cell in Sheet1 to be able to either re-evaluate it's contents when the contents of the dynamic data in the Sheet1 changes, or, I need to be able to put in a cell self-referencing workaround.
Excel Formula:
=INDIRECT(ADDRESS(ROW(),COLUMN()-3)
Excel Formula:
=OFFSET(INDIRECT(CELL("address")),0,-3)
I don't have any other methods for the cell to refer to itself, and as neither of these work as 'is', I can put this as a text string in the hopes I can force a function to re-evaluate the text string into a formula. However, there is no function to re-evaluate a cell; using methods such as SUBSTITUTE, LAMBDA, INDIRECT, and VBA modules designed to re-evaluate don't seem to re-evaluate the cell at all, or keeps it as a text string.
To get the full scope of what I'm trying to achieve these are my 2 sheets; TLDR;
- cell D3 of Sheet1 displays and functions correctly, dynamically changing when A3 and B3 are changed, however what I need to do is not have it refer directly to the cells but have it reference to the 'active cell' and offset it, which is what cell D2 is doing, however it does not carry the ability to re-evaluate when it's transposed over from Sheet2!B2
Book1 | ||||||||
---|---|---|---|---|---|---|---|---|
A | B | C | D | E | F | |||
1 | Increase 1 | Increase 2 | Name | Description | Function | |||
2 | 40 | 5 | Example 1 | #VALUE! | using ADDRESS to pull cells A2 and B2 in new cell -> does not re-evaluate when transposed | |||
3 | 40 | 5 | Example 2 | Increases primary parameters by 200% and secondary parameters by 30% | directly instancing A2 and B2 on Sheet2 -> confirmation that the lookup works correctly | |||
4 | 40 | 5 | Example 3 | ="Increases primary parameters by "&59.6+(Table1[@[Increase 1]]-1)*Sheet2!C4&"% and secondary parameters by "&6.06+(Table1[@[Increase 1]]-1)*Sheet2!D4+Table1[@[Increase 2]]*Sheet2!F4&"%" | CONCANATE = infront of the sentence and using ADDRESS, does not re-evaluate | |||
Sheet1 |
Cell Formulas | ||
---|---|---|
Range | Formula | |
D2:D3 | D2 | =INDEX(Table2[@Description],MATCH([@Name],Table2[@Name],0)) |
D4 | D4 | =CONCATENATE("=",INDEX(Table2[@Description],MATCH([@Name],Table2[@Name],0))) |
Book1 | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
A | B | C | D | E | F | G | H | |||
1 | Name | Description | Param. 1 | Param. 2 | Param. 3 | Param 4. | Param. 5 | Param. 6 | ||
2 | Example 1 | #VALUE! | 3.6 | 0.36 | 1.98 | |||||
3 | Example 2 | Increases primary parameters by 200% and secondary parameters by 30% | 3.6 | 0.36 | 1.98 | |||||
4 | Example 3 | "Increases primary parameters by "&59.6+(Table1[@[Increase 1]]-1)*Sheet2!C4&"% and secondary parameters by "&6.06+(Table1[@[Increase 1]]-1)*Sheet2!D4+Table1[@[Increase 2]]*Sheet2!F4&"%" | 3.6 | 0.36 | 1.98 | |||||
Sheet2 |
Cell Formulas | ||
---|---|---|
Range | Formula | |
B2 | B2 | ="Increases primary parameters by "&59.6+(INDIRECT(ADDRESS(ROW(),COLUMN()-3))-1)*Sheet2!C2&"% and secondary parameters by "&6.06+(INDIRECT(ADDRESS(ROW(),COLUMN()-3))-1)*Sheet2!D2+INDIRECT(ADDRESS(ROW(),COLUMN()-2))*Sheet2!F2&"%" |
B3 | B3 | ="Increases primary parameters by "&59.6+(Table1[@[Increase 1]]-1)*Sheet2!C3&"% and secondary parameters by "&6.06+(Table1[@[Increase 1]]-1)*Sheet2!D3+Table1[@[Increase 2]]*Sheet2!F3&"%" |