Indirect reference with changing cell value?

GolfHelp

New Member
Joined
Apr 5, 2023
Messages
4
Office Version
  1. 365
Platform
  1. Windows
Good Evening,

I'm trying to drag/copy-paste an indirect formula where the row value in the reference changes. Then continue the pattern over hundreds of cells. This is the general idea:

=INDIRECT("Sheet1!A3")
=INDIRECT("Sheet1!C3")
=INDIRECT("Sheet1!E3")
=INDIRECT("Sheet1!H3")
=INDIRECT("Sheet1!I3")
=INDIRECT("Sheet1!A11")
=INDIRECT("Sheet1!C11")
=INDIRECT("Sheet1!E11")
=INDIRECT("Sheet1!H11")
=INDIRECT("Sheet1!I11")

So on, so on. So, I need the column to change 5 times within the same row, then the row to change by 8 and have that repeat. Currently I'm manually changing the Cell and it's becoming exhausting as the sheet grows. I thought I could do this with OFFSET but I'm having issues figuring out how.
 

Excel Facts

Format cells as time
Select range and press Ctrl+Shift+2 to format cells as time. (Shift 2 is the @ sign).
just how many indirect functions will you have? and how many other formulas will rely on these cells?
INDIRECT (and OFFSET) are volatile functions which can drain the processing of workbook.

can you give the total dimensions of the data in sheet1?
 
Upvote 0
And is there some kind of reason why the sequence of Columns is not consistent:
A, C, E, H, I are column numbers: 1,3,5,8,9.
 
Upvote 0
Do you want a matrix or just one column?
 
Upvote 0
Sorry, that was a typo, columns 1,3,5,7,9 (A, C, E, G, I)

I want it all in one column.

I understand the formulas are cumbersome but I don’t know how else to do this. It will end up being about 1,500 cells that I put this formula in.
 
Upvote 0
Do you want a matrix or just one column?
Sorry, that was a typo, columns 1,3,5,7,9 (A, C, E, G, I)

I want it all in one column.

I understand the formulas are cumbersome but I don’t know how else to do this. It will end up being about 1,500 cells that I put this formula in.
 
Upvote 0
For a column of all the number paste this into cell A1 and copy down. If you paste in a different row, you must adjust the subtraction number to equal the row number:

Excel Formula:
=INDEX(Golfhelp1!$A$1:$CV$102,(((ROUNDDOWN((ROW(A1)-1)/5,0))*8)+3),CHOOSE(MOD((ROW(A1)-1),5)+1,1,3,5,8,9))
 
Upvote 0
Here are miniworkbooks:

Golfhelp1 is your sheet1:
mr excel questions 22.xlsm
ABCDEFGHI
1708789878856518964
2817257757768797554
312742233315915445
4111242123257543183454566
52531082642791181187539133
6247284186282257278263196275
7882902981487511349197254
821420213720412514828366147
9299287441874667232214234
1024614742215288205211201107
1162427257818364910
1223579159244275298292165219
13110422901661461672358346
14551231201932248427225648
15254214521441418912627743
1647248369411968235269212
1770932982469921615796273
18507820329129721510613879
1915999892014128174120273
20178160191243125148171261180
21722852419229514282293204
22285184276936255114247158
2328810213687256170288217292
24841131412228318328090162
2562257257237269277260281229
26121229159109298130248239177
271984624943146300235213127
28137441742263618423094132
29134288192942752974540248
30120124216301322327951288
3121518110010815929984125241
32187149611201805922499178
3324528619017415412728027190
3448200281382561661347461
352012241472871969929941186
3621971451231444712680127
37211135174873021910326045
3858153158272902782141254
3910223911794235253289298249
4015474281311336516410054
4119228424315058234144270224
4242253286165141128100275117
43242292250279236206133297289
442631822331532371988976225
455991913276143115161216
461839125128230124287151196
47282224903526012672176291
4811539135262268228192254183
4925519418520223820110230087
50911969718823120421116156
511621891409524028929820933
5243251711807854270248207
53155691911713663146223297
543311328423015612322357143
Golfhelp1



Golfhelp2 is your formula sheet:
This is using the choose function instead of just updating a mod formul (because of the G/H mix up). But it was a quick adjustment:
mr excel questions 22.xlsm
A
11
22
33
4154
55
66
77
88
964
1010
11159
Golfhelp2
Cell Formulas
RangeFormula
A1:A11A1=INDEX(Golfhelp1!$A$1:$I$54,(((ROUNDDOWN((ROW(A1)-1)/5,0))*8)+3),CHOOSE(MOD((ROW(A1)-1),5)+1,1,3,5,7,9))
 
Upvote 0
Here is the address of the target for each cell's formula
Cell Formulas
RangeFormula
A1:A11A1=INDEX(Golfhelp1!$A$1:$I$54,(((ROUNDDOWN((ROW(A1)-1)/5,0))*8)+3),CHOOSE(MOD((ROW(A1)-1),5)+1,1,3,5,7,9))
B1:B11B1=ADDRESS(((ROUNDDOWN((ROW(A1)-1)/5,0))*8)+3,CHOOSE(MOD((ROW(A1)-1),5)+1,1,3,5,7,9),4,1,"Golfhelp1")
 
Upvote 1
Solution
INDEX is not volatile, but it does recalculate every time you open the workbook.
The OFFSET function using array formulas in a LET statement could work but I am not that proficient at that.
I am a fan of INDEX.
 
Upvote 0

Forum statistics

Threads
1,215,637
Messages
6,125,965
Members
449,276
Latest member
surendra75

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top