It will always be complicated to number Word tables in any manner other than
that Word intends i.e. left to right. One way would be to insert sequence
SEQ fields in each cell with separate sequences for each column. You can do
this with a macro after you have created your table, but before filling it
e.g.as follows, which will number a table by column no matter how many rows
or columns.
http://www.gmayor.com/installing_macro.htm
Sub NumberCellsByColumn()
Dim oTable As Table
Dim oCell As Range
Dim sSeq As String
Dim i, j As Long
Set oTable = ActiveDocument.Tables(1)
For j = 1 To oTable.Rows.Count
For i = 1 To oTable.Columns.Count
If j = 1 Then
If i > 1 Then
sSeq = "Col" & i & " \r" & _
(oTable.Rows.Count * (i - 1) + 1)
Else
sSeq = "Col" & i
End If
Else
sSeq = "Col" & i
End If
Set oCell = oTable.Cell(j, i).Range
oCell.End = oCell.End - 1
oCell.Select
Selection.Fields.Add Selection.Range, _
wdFieldSequence, sSeq, False
Next i
Next j
End Sub