View Single Post
  #5   Report Post  
Frank Kabel
 
Posts: n/a
Default

Frank Kabel wrote...
on your second sheet in A1 enter
=OFFSET('sheet1'!$A$1,INT((ROW()-1)/5),MOD(ROW()-1,5)
and copy this down


First, your formula is missing a final right parenthesis. Untested?

No but just not able to copy and paste correctly on my side :-)


Secong, you do need to start reading what OPs write more carefully.
OP wants to interate by row then by column, not by column then by
row. Your formula above would need to change to

=OFFSET('sheet1'!$A$1,MOD(ROW()-1,3),INT((ROW()-1)/3))

Thanks for the correction


Third, positionally dependent. As an alternative, the following
returns an array of numbers that could be used as a component in
longer formulas. I'm using x to denote the source range.

=N(OFFSET(x,MOD(ROW(INDIRECT("1:"&(ROWS(x)*COLUMNS (x))))-1,ROWS(x)),
INT((ROW(INDIRECT("1:"&(ROWS(x)*COLUMNS(x))))-1)/ROWS(x)),1,1))

For that matter, if the result were to be entered into a single
column, multiple row range of cells, a slightly shorter array formula
could be used.

=INDEX(x,MOD(ROW(INDIRECT("1:"&(ROWS(x)*COLUMNS(x) )))-1,ROWS(x))+1,
INT((ROW(INDIRECT("1:"&(ROWS(x)*COLUMNS(x))))-1)/ROWS(x))+1)


Both formulas are quite nice
Regards
Frank