excel - 对列表框中的日期进行排序
问题描述
我正在尝试在包含三列的列表框中按降序对日期进行排序。
我有两个列表框。当我单击第一个列表中的某个项目时,日期应按降序显示在第二个列表中。
日期在第二列,位于单元格(34,i)的工作表上,如下所示:
me.listbox1.list(me.listbox2.listcount -1,1)=ws.Cells(34,i)
我试过这段代码:(Listbox_click)
Dim y, x As Integer
Dim MyList As Variant
With Me.ListBox_Histo_IT
For y = 0 To .ListCount - 1
For x = y To .ListCount - 2
If .List(x, 1) < .List(y, 1) Then
For c = 0 To 2
MyList = .List(y, c)
.List(x, c) = .List(y, c)
.List(y, c) = MyList
Next c
End If
Next x
.List(y, 2) = Format(.List(y, 2), "####.00")
Next y
End With
解决方案
这是现在的代码:@CDP1802 它完美运行感谢大家:) Dim y, x As Integer Dim MyList As Variant
With Me.ListBox_Histo_IT
For y = 0 To .ListCount - 1
For x = y To .ListCount - 2
If CDate(.List(x, 1)) > CDate(.List(y, 1)) Then
For c = 0 To 2
MyList = .List(x, c)
.List(x, c) = .List(y, c)
.List(y, c) = MyList
Next c
End If
Next x
.List(y, 2) = Format(.List(y, 2), "####.00")
Next y
End With