Hallo,
seit einiger zeit versuche ich eine Sortierung per Makro zu automatisieren, ledier komme ich momentan nicht weiter.
Über die SortFields.Add2 muss eine Range angegeben werden. Diese wird meistens durch den List-Object-Namen angegeben (Bei mir wäre das bspw.: "VG_L1_5" Zeile: 13)
- Nun zu meinem Problem: Dieser Name ändert sich regelmäßig, wehsalb ich ihn gerne als eine Variable angeben würde, oder gar austauschen, und das Objekt einfach als ListObjects(1) ansprechen würde.
Vielen Dank im Vorraus
Private Sub CommandButton5_Click()
Dim TableName As String
LastRowXML = Sheets("XML PowerQuery").Cells(Rows.Count, 1).End(xlUp).Row
TableName = ListObjects(1)
ActiveWorkbook.Worksheets("XML PowerQuery").ListObjects(TableName).Sort.SortFields.Clear
ActiveWorkbook.Worksheets("XML PowerQuery").ListObjects(TableName).Sort.SortFields.Add2 Key:=Range("VP_L1__5[systemdate]"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortTextAsNumbers
With ActiveWorkbook.Worksheets("XML PowerQuery").Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End Sub
|