我遇到了我的問題列表框。當我第一次運行下面的代碼時,它總是運行顯示只有一個日期,這是30/12/1899。我所指定的範圍只包含6個日期,分別是2014年8月1日,2014年9月1日,2014年14月1日,2014年24月1日,2014年24月1日和2014年2月2日 。 一旦我停止表單並再次運行,所有需要的日期都會顯示出來。列表框顯示不在範圍內的日期
我剛開始在Excel上學習VBA,所以我仍然在努力理解這些概念。 有什麼我失蹤?沒有重複的原因是我無法顯示2日期(24/01/2014)。
Private Sub UserForm_Activate()
Dim AllCells As Range, Cell As Range
Dim NoDupes As New Collection
Dim i As Integer, j As Integer
Dim Swap1, Swap2, Item
Dim wksJobDetail As Worksheet
'The items are in A2:A7
Set AllCells = Range("A2:A7")
'Point the variable to JobSchedule worksheet
Set wksJobDetail = Application.Workbooks("xxxxx.xlsm").Worksheets("JobSchedule")
wksJobDetail.Activate
'Statement ignores any errors regarding duplicates and duplicate dates aren't added
On Error Resume Next
For Each Cell In AllCells
NoDupes.Add Format(CDate(Cell.Value), "dd/mm/yyyy"), _
CStr(Format(CDate(Cell.Value), "dd/mm/yyyy"))
Next Cell
'Add non-duplicated items into lstDate
For Each Item In NoDupes
JobDetail.lstDate.AddItem Item
Next Item
End Sub