Don,
although your efforts to use VBA are commendable, there is no need to use it to populate your listbox. As JockeK has already stated, the only thing that you need to do is to tell the listbox the RowSource criteria.
In the VBA editor if you right-click on the Listbox concerned and select...
Try this:
Sub DeleteRow()
Dim iRow As Integer
iRow = 1
While Cells(iRow, 1) <> ""
If Cells(iRow, 1).Value < TimeSerial(15, 0, 0) Then
Rows(iRow).Select
Selection.Delete Shift:=xlUp
Else: iRow = iRow + 1
End If...