اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

جمع الليست بوكس بعد تصفيتها


rahekk

الردود الموصى بها

اخي وحبيبي ابو حنين اثابك الله واطال في عمرك انت وحنين لي طلب هل يمكن كتابة التاريخ في خانة من الشهر والسنة فقط بغض النظر عن اليوم مثلا الزبون محمد 1 من تاريخ 4-2013 الى تاريخ 7-2013 بغض النظر عن اليوم انا في الانتظار

رابط هذا التعليق
شارك

اخي وحبيبي ابو حنين اثابك الله واطال في عمرك انت وحنين
لي طلب هل يمكن كتابة التاريخ في خانة من الشهر والسنة فقط بغض النظر عن اليوم
مثلا
الزبون محمد 1
من تاريخ 4-2013  الى تاريخ 7-2013
بغض النظر عن اليوم
انا في الانتظار
 

رابط هذا التعليق
شارك

الاستاذ الكبير ابو حنين

اعمالك دائماً علامه من علامات المنتدى جعلها الله فى ميزان حسناتك

هل يمكن جعل اسم الزبون ياتى من قائمة منسدلة بدل الكتابة ويكون مصدرها العمود الاول

تقبل تحياتى واحترامى

رابط هذا التعليق
شارك

اخى ابو حنين

بارك الله فيك

ولكن هل يمكن عمل زر للطباعه الفورم

بمعنى

انه يتم طباعه الفورم

ولكن اذا كانت الليست بوكس بها بيانات كثيره يتم طباعه

الهيدر(الاسم-التاريخ من-التاريخ الى)

مع الليست بوكس فى الصفحه الاولى

ثم باقى الليست بوكس فى الصفحه الثانيه مع المبلغ

رابط هذا التعليق
شارك

الاستاذ الفاضل ابو حنين

نتعلم منك ونتعلم ومن حلاوة علمك نريد ان نستزيد

بعد اذنك اؤيد طلب الاستاذ ابراهيم ابو ليله فى عمل امر لطباعة الفورم بعد اختيار الزبون وتحديد الفترةواستخلاص النتيجة

رابط هذا التعليق
شارك

الاستاذ الفاضل ابو حنين

يعجز الكلام عن التعبير على شكرى لشخصكم الكريم على استجابتكم لطلباتنا واعجابنا باعمالكم المميزة

واسمح لى ان اطلب منكم شرح كود الطباعة انه يعتبر كودين فى كود الجزء الاول استخلاص البيانات ( ترحيلها ) ثم طباعتها

تقبل منى كل الشكر والدعاء بدام الصحة والستر والعافية

رابط هذا التعليق
شارك

هذا شرح مبسط لعمل الكود

'************************************************************
' هذا الجزئ خاص بتعيين ورقة الطباعة
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
'********************************************************************


رابط هذا التعليق
شارك

الاستاذ القدير الجليل ابو حنين

انار الله عقلك وقلبك كما انارت عقولنا فبالشرح الجميل المقدم من شخصكم الكبير انارت العقول بمصباح مفتاحه فى ايدينا جعلها الله صدقة جارية فى ميزان حسناتك وتقبلها منك ان شاء الله

من اعماق قلبى ارسل لك اجمل الكلمات والتحية

رابط هذا التعليق
شارك

الاستاذ الفاضل ابو حنين

احب ان اهنئك والاسره الكريمه بعيد الفطر المبارك اعاده الله عليكم وعلى الامه الاسلامية باليمن والبركات

اسمح لى ان اعرض عليكم هذا السؤال وارجو ان تستوعب عطشى من التعلم من شخصكم الكريم

احب ان اعرف معنى الحدث التالى الموجود فى كود الفورم وشرح سطوره(اوامره) .

Private Sub UserForm_Initialize()

Set sh = Sheets("æÑÞÉ1")

With sh

'.Activate

LsRow = .Cells(Rows.Count, "A").End(xlUp).Row

On Error Resume Next

ListBox1.Clear: For A = 2 To LsRow

ListBox1.AddItem .Cells(A, 1): ListBox1.List(C, 1) = Format(.Cells(A, 2), "dd-mm-yyyy")

ListBox1.List(C, 2) = .Cells(A, 3)

C = C + 1

Next

For j = 0 To ListBox1.ListCount - 1

TextBox4 = Val(TextBox4) + Val(ListBox1.Column(2, j))

Next

On Error Resume Next

Dim MyValue As Collection, Cl As Range

Set MyValue = New Collection

For Each Cl In .Range("a2:a" & LsRow)

MyValue.Add Cl.Value, Cl.Text

Next Cl

For i = 1 To MyValue.Count

Me.ComboBox1.AddItem MyValue(i)

Next i

End With

End Sub

رغم تكرار معظم اوامره فى حدث

Private Sub ComboBox1_Change()

وكل عام وانتم بخير

تم تعديل بواسطه عادل ابوزيد
رابط هذا التعليق
شارك

السلام عليكم

هذا شرح مختصر للكود


' هذا السطر هو تنفيذ الكود في حالة فتح الفورم دون الضغط على اي زر
Private Sub UserForm_Initialize()

'**********************************************************************************************
' هذا السطر هو تحديد الورقة التي تحتوي على البيانات
Set sh = Sheets("ورقة1")
'**********************************************************************************************

'**********************************************************************************************
' قمنا بتسميتها sh
With sh
'**********************************************************************************************


'**********************************************************************************************
' هنا يتم تحديد آخر خلية من العمود الأول تحتوي على بيانات
LsRow = .Cells(Rows.Count, "A").End(xlUp).Row
'**********************************************************************************************


On Error Resume Next


'**********************************************************************************************
' يجب مسح اللستبوكس قبل ملئها
ListBox1.Clear
'**********************************************************************************************

'**********************************************************************************************
' حلقة تكرار للخلايا التي تحتوي على بيانات
For A = 2 To LsRow
'**********************************************************************************************


'**********************************************************************************************
' اضافة البيانات الموجودة في العمود الأول من ورقة البيانات الى العمود الأول في اللستبوكس
ListBox1.AddItem .Cells(A, 1)
'**********************************************************************************************

'**********************************************************************************************
' اضافة البيانات الموجودة في العمود الثاني من ورقة البيانات الى العمود الثاني في اللستبوكس بتنسيق التاريخ
ListBox1.List(C, 1) = Format(.Cells(A, 2), "dd-mm-yyyy")
'**********************************************************************************************


'**********************************************************************************************
' اضافة البيانات الموجودة في العمود الثالث من ورقة البيانات الى العمود الثالث في اللستبوكس
ListBox1.List(C, 2) = .Cells(A, 3)
'**********************************************************************************************


'**********************************************************************************************
' لكي تنتقل الكتابة من الصف الاول في اللستبوكس الى الصف الذي يليه
C = C + 1
'**********************************************************************************************

Next


'**********************************************************************************************
' حلقة تكرار لحساب عد الصفوف في اللستبوكس
For j = 0 To ListBox1.ListCount - 1
'**********************************************************************************************


'**********************************************************************************************
'جمع القيم الموجودة في العمود الثالث في اللستبوكس و وضعها في مربع النص
TextBox4 = Val(TextBox4) + Val(ListBox1.Column(2, j))
'**********************************************************************************************


Next
On Error Resume Next

'**********************************************************************************************
' الكود التالي خاص بتعبئة الكمبوبكس دون فراغات و دون تكرار الأسماء
    Dim MyValue As Collection, Cl As Range
        Set MyValue = New Collection
            For Each Cl In .Range("a2:a" & LsRow)
                MyValue.Add Cl.Value, Cl.Text
            Next Cl
        For i = 1 To MyValue.Count
    Me.ComboBox1.AddItem MyValue(i)
  Next i
End With
'**********************************************************************************************

End Sub

رابط هذا التعليق
شارك

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



سجل دخولك الان
  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information