The following code will take any number of cells in column A of the active sheet and use them to make a matrix 10 rows high on the named sheet.
Sub MakeGrid()
Const sTARGET_SHEET = "Sheet2"
Const lCOL_LENGTH = 10
Const lFIRST_ROW = 1
Const lSOURCE_COL = 1
Const lTARGET_ROW=1
Dim lLastRow As Long
Dim lLoop As Long
Sheets(sTARGET_SHEET).Cells.Clear
With ActiveSheet
lLastRow = .Cells(.Rows.Count, lSOURCE_COL).End(xlUp).Row
For lLoop = 1 To WorksheetFunction.RoundUp((lLastRow - lFIRST_ROW) / lCOL_LENGTH, 0)
.Range(.Cells((lLoop - 1) * lCOL_LENGTH + lFIRST_ROW, lSOURCE_COL), .Cells(lLoop * lCOL_LENGTH + lFIRST_ROW - 1, lSOURCE_COL)).Copy Destination:=Sheets(sTARGET_SHEET).Cells(lTARGET_ROW, lLoop)
Next lLoop
End With
End Sub
Bookmarks