I have 1 long column in an excel sheet. I want to split that 1 column into multiple columns.
The multiple column split should happen after every 10 entries. So if there are a total 80 cells in my original column I want them to be split into 8 columns each having 10 cells.
I am not well-versed in VBA so I won't be able to follow hints, but I might me able to modify a sample code.
My Question Begins Now
I have searched SU and found this topic How to Split one column in Excel into multiple columns of 55 rows
It has the following command
=INDIRECT("Sheet1!R" & (COLUMN()-1)*55+MOD(ROW()-1,55)+1 & "C1", FALSE)
I modified it to
=INDIRECT("Sheet1!R" & (COLUMN()-1)*10+MOD(ROW()-1,10)+1 & "C1", FALSE)
I understand the first parameter to INDIRECT should be the source where I want to pick the value from so it should be of the format "Sheet1!RnnnCnnn" where 'nnn' are the row and column numbers.
Can someone please explain what is happening in the following:
"Sheet1!R" & (COLUMN()-1)*10+MOD(ROW()-1,10)+1 & "C1"
Thanks.
Answer
"Sheet1!R" & (COLUMN()-1)*10+MOD(ROW()-1,10)+1 & "C1"
Sheet1 to read from sheet1 R & (column()-1)*10 is the reference where to read in which row of the initial column it should give you the column where the formula is -1 multiplied by 10 plus the remainder of the division by 10 of the row number if your formula is in row 1 column 2 in the new sheet, it should read:
Sheet1!R(2-1)*10+Mod(1-1,10)+1 & C1=Sheet1!R11C1
it means to read the value in Row 11 in sheet1 column 1 and when you drag the formula down 10 times it will read the following value (next row) in the same column of sheet 1 and whenever you reach the row 10 you should move to the next column first row and write the same formula again.
Notice that C1 is fixed because you are reading from the first column, but the row is moving that is why it needs to be calculated in a way to be divided by 10, so all this formula is to calculate which row to read from the first column of sheet 1 and it depends of the column where the formula is.
The Excel MOD function
returns the remainder of a division between two supplied numbers. The syntax of the MOD function is: MOD( number, divisor )
where the arguments are as follows:
number - The number to be divided.
divisor - The value that the number argument is divided by.
Comments
Post a Comment