@صياد الجراح
اعتقدت لقد حصلت على اجابة بناء على منشورك #7
ولكن يبدو انه تم تصميم برنامج يختلف عن منشورك الاصلي .
هذا تعديل ابسط مما تتصور وتستطيع فهم كودك بتعديلات بسيطة .
Private Sub CommandButton2_Click()
Dim ls As Integer
Dim ss As Integer, EDt As Date
With Me.ListBox1
.ColumnCount = 5
.ColumnWidths = "103;103;103;103;103"
.TextAlign = fmTextAlignCenter
End With
ls = Sheet1.Range("D" & Rows.Count).End(xlUp).Row
Me.ListBox1.Clear
'convert text to date
EDt = CDate(Me.TextBox1.Text)
With Sheet1
For ss = 2 To ls
If .Cells(ss, "d") <= EDt Then
Me.ListBox1.AddItem .Cells(ss, 1)
Me.ListBox1.List(ListBox1.ListCount - 1, 1) = .Cells(ss, "b")
Me.ListBox1.List(ListBox1.ListCount - 1, 2) = .Cells(ss, "c")
Me.ListBox1.List(ListBox1.ListCount - 1, 3) = Format(.Cells(ss, "d"), "mm/dd/yyyy")
Me.ListBox1.List(ListBox1.ListCount - 1, 4) = .Cells(ss, "e")
End If
Next ss
End With
End Sub