In dem Fall kannst du Worksheetfunction.Transpose nicht verwenden ... musst also selbst Zeilen und Spalten tauschen.
Kopiere folgenden Makro unter deine Sub CommandButton1_Click().
Private Function TransposeTable(Table As Variant) As Variant
ReDim t(LBound(Table, 2) To UBound(Table, 2), LBound(Table, 1) To UBound(Table, 1)) As Variant
Dim i As Long
Dim j As Long
For i = LBound(Table, 2) To UBound(Table, 2)
For j = LBound(Table, 1) To UBound(Table, 1)
t(i, j) = Table(j, i)
Next
Next
TransposeTable = t
Erase t
End Function
Die Funktionen rufst du dann wie folgt auf:
'Listbox1 formatieren
With ListBox1
.ColumnHeads = True
.Font.Size = 10
' .Clear
.List = TransposeTable(astrOutput)
.ColumnCount = 1 + UBound(.List, 2)
.ColumnWidths = "40;70;80;80;70;70;80;100;100;35"
End With
ListBox1.Clear ist übrigens nicht nötig, da du durch Zuweisung einer neuen Liste, die alte Liste eh verwirfst. ;)
Grüße
|