With all due respect to Hans, his is an answer to a different question to that addressed in this thread.
If you want to populate 4 userform list boxes (which can have a maximum of 10 columns each) with the 35 columns from your table, display two columns in each and set the width of the form (which is what you asked) then you would need something like
Private Sub UserForm_Initialize()
Dim xlApp As Object
Dim xlWB As Object
Dim xlWS As Object
Dim cRows As Long
Dim cCols As Long
Dim i As Long, j As Long, k As Long, m As Long
Dim strWidth As String
Set xlApp = CreateObject("Excel.Application")
Set xlWB = xlApp.Workbooks.Open("C:\Templates\TemplateDocs\ClientInfo.xlsx")
Set xlWS = xlWB.Worksheets(1)
On Error GoTo CleanUp
cRows = xlWS.Range("A65536").End(xlUp).Row
cCols = 10
Me.Width = 280 'Set the width of the form
With Me.ListBox1
.ColumnCount = cCols
strWidth = Int((.Width / 2) - 2)
strWidth = strWidth & ";" & strWidth
For k = 2 To cCols
strWidth = strWidth & ";" & 0
Next k
.ColumnWidths = strWidth
For i = 2 To cRows
.AddItem xlWS.Cells(i, 1)
For j = 1 To 9
.list(.ListCount - 1, j) = xlWS.Cells(i, j + 1)
Next j
Next i
.ListIndex = -1
End With
With Me.ListBox2
.ColumnCount = cCols
strWidth = .Width - 2
.ColumnCount = cCols
strWidth = Int((.Width / 2) - 2)
strWidth = strWidth & ";" & strWidth
For k = 2 To cCols
strWidth = strWidth & ";" & 0
Next k
.ColumnWidths = strWidth
For i = 2 To cRows
.AddItem xlWS.Cells(i, 10)
For j = 10 To 19
.list(.ListCount - 1, j - 10) = xlWS.Cells(i, j + 1)
Next j
Next i
.ListIndex = -1
End With
With Me.ListBox3
.ColumnCount = cCols
.ColumnCount = cCols
strWidth = Int((.Width / 2) - 2)
strWidth = strWidth & ";" & strWidth
For k = 2 To cCols
strWidth = strWidth & ";" & 0
Next k
.ColumnWidths = strWidth
For i = 2 To cRows
.AddItem xlWS.Cells(i, 20)
For j = 20 To 29
.list(.ListCount - 1, j - 20) = xlWS.Cells(i, j + 1)
Next j
Next i
.ListIndex = -1
End With
With Me.ListBox4
.ColumnCount = cCols
.ColumnCount = cCols
strWidth = Int((.Width / 2) - 2)
strWidth = strWidth & ";" & strWidth
For k = 2 To cCols
strWidth = strWidth & ";" & 0
Next k
.ColumnWidths = strWidth
For i = 2 To cRows
.AddItem xlWS.Cells(i, 30)
For j = 30 To 34
.list(.ListCount - 1, j - 30) = xlWS.Cells(i, j + 1)
Next j
Next i
.ListIndex = -1
End With
CleanUp:
Set xlWS = Nothing
Set xlWB = Nothing
xlApp.Quit
Set xlApp = Nothing
End Sub
'The following will set the value selected in the first box in the rest.
Private Sub ListBox1_Change()
Me.ListBox2.ListIndex = Me.ListBox1.ListIndex
Me.ListBox3.ListIndex = Me.ListBox1.ListIndex
Me.ListBox4.ListIndex = Me.ListBox1.ListIndex
End Sub