Grab 5 rows of 25 numbers and paste them as one line of 125


I have 5 rows, each contains 25 numbers (125) numbers in total.  Which is the easiest and fastest way to grab this 5 x 25 numbers and paste them elsewhere as one row of 125 numbers?

Thank you
Who is Participating?

Improve company productivity with a Business Account.Sign Up

Martin LissConnect With a Mentor Older than dirtCommented:
Here's a macro you can use. It assumes the data is in rows 1 to 5 and it puts the data in row 6.

Sub CombineRows()
Dim intSel As Integer
Dim intPaste As Integer

Application.ScreenUpdating = False

intPaste = 1
' Assumes the data is in rows 1 to 5
For intSel = 1 To 5
    Range("A" & intSel & ":" & "Y" & intSel).Select
    ' Puts the result in row 6
    Cells(6, intPaste).Select
    intPaste = intPaste + 25

Application.CutCopyMode = False
Application.ScreenUpdating = True

Open in new window

You could save the file as a .csv file, then open it with Notepad... it would give you all 5 of your rows separated by a ','.  Just delete the 4 commas in the file, save it, then open it back up w/ Excel.
There are also numerous ways you could automate this process with PowerShell... not sure how comfortable you are with scripting, but I could create a sample script that would do this if you're comfortable running scripts.  What operating system are you using?
The 14th Annual Expert Award Winners

The results are in! Meet the top members of our 2017 Expert Awards. Congratulations to all who qualified!

DemonForceAuthor Commented:
Hi, needs to be in Excel VBA so its automated thanx
ahh, sorry, misunderstood... not really an Excel expert, so apologies for wasting time here.... that being said, it looks like you can just concatenate your rows with '&':


That's making the assumption that when you say you have 25 numbers per row, that they are 25 numbers in a single column.... if they are 5 rows x 25 columns, then this would take longer to type in for 125 cells.

ahh, looks like someone posted who is way more familiar with this than I am... signing out, looks like you have a better person to ask than me:)
Saqib Husain, SyedEngineerCommented:
You can also try this one-liner. C10 is where the table starts. A7 is where the results starts (this should remain in column A. If you want to change it some modification is required).

Sub tab2row()
Range("A7").Resize(, 25).Formula = "=index(" & Range("C10").Resize(5, 5).Address & ",(COLUMN()-1)/5+1,MOD(COLUMN()-1,5)+1)"
End Sub

Open in new window

Martin LissOlder than dirtCommented:
I'm glad I was able to help.

In my profile you'll find links to some articles I've written that may interest you.
Marty - MVP 2009 to 2013
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.