هذا شرح مبسط لعمل الكود
'************************************************************
' هذا الجزئ خاص بتعيين ورقة الطباعة
Set sh = Sheets("ورقة2")
With sh
.Activate
'************************************************************
'************************************************************
' هذا السطر خاص بتحديد آخر خلية تحتوي على بيانات
LsRow = .Cells(Rows.Count, "B").End(xlUp).Row + 1
'************************************************************
'************************************************************
' عند حدوث خطأ ما أكمل
On Error Resume Next
'************************************************************
'************************************************************
' حلقة تكرار تقوم بحساب عدد صفوف اللستبوكس
For AA = 0 To ListBox1.ListCount
'************************************************************
' نقل البيانات الموجودة في العمود الاول من اللستبوكس الى العمود الثاني في ورقة الطباعة
.Cells(AA + LsRow, 2) = ListBox1.Column(0, AA)
'************************************************************
'************************************************************
' نقل البيانات الموجودة في العمود الثاني من اللستبوكس الى العمود الثالث في ورقة الطباعة
.Cells(AA + LsRow, 3) = ListBox1.Column(1, AA)
'************************************************************
' نقل البيانات الموجودة في العمود الثالث من اللستبوكس الى العمود الرابع في ورقة الطباعة
.Cells(AA + LsRow, 4) = ListBox1.Column(2, AA)
'************************************************************
' رسم جدول يحتوي البيانات الموجودة في ورقة الطباعة
.Range(.Cells(9, 2), .Cells(LsRow + AA - 1, 4)).Borders.LineStyle = xlContinuous
' الى هنا ينتهي كود نقل البيانات من اللستبوكس الى ورقة الطباعة
'--------------------------------------------------------------------------------------------
Next
' من هنا يبتدأ كود الطباعة
LR = .Cells(Rows.Count, "d").End(xlUp).Row + 1
.Cells(LR + 1, 4) = TextBox4.Value
.Cells(LR + 1, 3) = "المجموع :"
.Cells(LR + 1, 4).Borders.LineStyle = xlContinuous
.Cells(LR + 1, 3).Borders.LineStyle = xlContinuous
End With
Unload Me
'********************************************************************
' للمعاينة نكتب
ورقة2.PrintPreview
'********************************************************************
'********************************************************************
' للطباعة نكتب بدل الجملة السابقة الجملة التالية
ورقة2.PrintOut
'********************************************************************