0

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.

  • I do not intend to split the contents of a column; I intend to split the whole column into multiple parts. – Newton Aug 2 '16 at 6:36
  • ok, I understand now, can you please add some screenshot with sample data? "Can someone please explain what is happening in the following" - what exactly should we explain? Try to evaluate it (formulas - evaluate formula) and you'll see each step of calculation. I suppose your modified formula doesn't work, what exactly happens? – Máté Juhász Aug 2 '16 at 6:39
  • The modified formula is working; but I have no idea how. I do not understand how the first parameter to the INDIRECT has been given. what is the "Sheet1!R" & (COLUMN()-1)*10+MOD(ROW()-1,10)+1 & "C1" doing? I have 1 column having 1000 entries and this formula when pasted gives me approx 100 columns of 10 entries each – Newton Aug 2 '16 at 7:04
  • have you tried evaluating your formula? – Máté Juhász Aug 2 '16 at 7:08
1

"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.

  • So the & is a concatenate thing? – Newton Aug 2 '16 at 9:19
  • 1
    Yes & to combine several values – Sam Aug 2 '16 at 9:29

Your Answer

By clicking "Post Your Answer", you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.