أكاديمية الصقر للتدريب

لوحة التميز الأسبوعي
العضو المتميز المشرف المتميز المراقب المتميز المدير المتميز الموضوع المتميز القسم المتميز
العضو المتميز المشرف المتميز المراقب المتميز المدير المتميز الموضوع المتميز القسم المتميز
مالك ماريه Eslam Abdullah-- لا تميز خلال هذه الفترة YasserKhalil مع أكاديمية الصقر اخفي أكوادك وعيش حياتك EvilClippy VBA Project Unviewable Protection اكسيل اسئله واجابات


اعلان هنا
ألعاب فلاش أون لاين
أعلن هنا
أعلن هنا
صفحتنا على الفيس بوك
أعلن هنا



أهلا وسهلا بك زائرنا الكريم في أكاديمية الصقر للتدريب، لكي تتمكن من المشاركة ومشاهدة جميع أقسام المنتدى وكافة الميزات ، يجب عليك إنشاء حساب جديد بالتسجيل بالضغط هنا أو تسجيل الدخول اضغط هنا إذا كنت عضواً .





نقل عناصر الليست بوكس إلى أعلى وإلى أسفل Move ListBox Items Up And Down

السلام عليكم ورحمة الله وبركاته إخواني وأحبابي في الله أقدم لكم اليوم موضوع جديد يخص التعامل مع الفورم ومع أداة الليست ..



07-09-2019 10:47 صباحا
YasserKhalil
menu_open عضوية موثقة
مراقب عام
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 3
المشاركات : 7274
الجنس : ذكر
تاريخ الميلاد : 1-10-1978
الدعوات : 19
يتابعهم : 0
يتابعونه : 411
قوة السمعة : 20933
الاعجاب : 1487
 offline 

السلام عليكم ورحمة الله وبركاته

إخواني وأحبابي في الله

أقدم لكم اليوم موضوع جديد يخص التعامل مع الفورم ومع أداة الليست بوكس ، حيث سنقوم بعمل كود يقوم بنقل العنصر (الصف) داخل الليست بوكس إلى أعلى أو إلى أسفل .. والمميز في الكود أنك ستتمكن بسهولة من استخدام الكود للانتقال لأعلى أو لأسفل بسطر واحد فقط .. حيث قمت بعمل إجراء عام تحدد من خلاله الليست بوكس المطلوب التعامل معه ، والبارامتر الثاني سيكون إما True (الانتقال لأعلى) أو False (الانتقال لأسفل)

نبدأ على بركة الله ..
-----------------

بفرض أن لديك بيانات في ورقة العمل Sheet1 بهذا الشكل (5 أعمدة)
MPKXi_001

والمطلوب عرض هذه البيانات في الليس بوكس ListBox1 ..
نقوم بإدراج فورم ونضع عليه أداة الليست بوكس ListBox ونغير في الخصائص ونجعل عدد الأعمدة ColumnsCount يساوي 5 ، ويمكن تغيير الفونت وما إلى ذلك من خصائص ..

في حدث الفورم وعند بدء تشغيل الفورم نقوم بعملية التعبئة للنطاق الموجود في ورقة العمل إلى البيست بوكس بهذا الكود
Private Sub UserForm_Initialize()
    Dim a
    
    a = Range("A2:E" & Cells(Rows.Count, 1).End(xlUp).Row).Value
    ListBox1.List = a
End Sub


الكود بسيط وسهل حيث يتم تخزين النطاق في مصفوفة ويتم تعبئة الليست بوكس بهذه المصفوفة ، ليكون الفورم بهذا الشكل عند تشغيله

GGZc3_002

الآن نأتي لأهم نقطة في موضوعنا ألا وهو الكود المستخدم في عملية نقل عناصر الليست بوكس لأعلى وأسفل .. وهنا سنقوم بوضع الكود التالي في موديول عادي وليس في موديول الفورم
Sub MoveListBoxItemUpDown(objListBox As Object, sMove As Boolean)
    Dim arr         As Variant
    Dim temp        As String
    Dim i           As Integer
    Dim j           As Integer
    Dim num         As Integer

    arr = objListBox.List

    For i = 0 To objListBox.ListCount - 1
        If objListBox.Selected(i) Then num = i: Exit For
    Next i

    For i = 0 To UBound(arr)
        If IIf(sMove, num > 0 And i = num, Not num >= UBound(arr, 1) And i = num) Then
            For j = 0 To objListBox.ColumnCount - 1
                temp = arr(i, j)
                If sMove Then
                    arr(i, j) = arr(i - 1, j)
                    arr(i - 1, j) = temp
                Else
                    arr(i, j) = arr(i + 1, j)
                    arr(i + 1, j) = temp
                End If
            Next j
        End If
    Next i

    objListBox.List = arr
End Sub


هذا الإجراء العام سيكون له عدد 2 بارامتر الأول هو اسم أداة الليست بوكس وهو في مثالنا ListBox1 ، والبارامتر الثاني مخصص لاختيار الانتقال لأعلى أو الانتقال لأسفل
وهذا البارامتر عبارة عن Boolean أي قيمة منطقية إما True وإما False .... فإذا كانت القيمة True سيتم الانتقال لأعلى (أي نقل العنصر المحدد لأعلى) ، وإذا كانت القيمة False سيتم الانتقال لأسفل (أي نقل العنصر المحدد لأسفل)

ولتطبيق الكود ، قم بإنشاء زري أمر أحدهما cmdUp والآخر cmdDown وضع الكود التالي في حدث الفورم
Private Sub cmdUp_Click()
    MoveListBoxItemUpDown ListBox1, True
End Sub

Private Sub cmdDown_Click()
    MoveListBoxItemUpDown ListBox1, False
End Sub


لتنفيذ الكود بشكل صحيح قم بتحديد العنصر (الصف) داخل الليست بوكس ListBox1 ، ثم اضغط على زر الانتقال لأعلى أو زر الانتقال لأسفل

أرجو أن يكون الموضوع ذو فائدة لكم


لمشاهدة الروابط يلزمك التسجيل في أكاديمية الصقر للتدريب

إعداد وتقديم / ياسر خليل أبو البراء
 
 


أثارت هذه المشاركة إعجاب: ali mohamed ali، Yasser Elaraby، محمود ابو الدهب، hassona229،





07-09-2019 10:54 صباحا
مشاهدة مشاركة منفردة [1]
ali mohamed ali
menu_open
مشرف على منتدى الاكسيل
rating
معلومات الكاتب ▼
تاريخ الإنضمام : 20-11-2017
رقم العضوية : 1757
المشاركات : 1212
الدولة : مصر
الجنس : ذكر
الدعوات : 1
يتابعهم : 0
يتابعونه : 52
قوة السمعة : 5719
الاعجاب : 716
 Online 
look/images/icons/i1.gif نقل عناصر الليست بوكس إلى أعلى وإلى أسفل Move ListBox Items Up And Down
الله عليك استاذنا الكريم عمل رائع - جعله الله فى ميزان حسناتك  وزادك الله من فضله

أثارت هذه المشاركة إعجاب: YasserKhalil،


توقيع :ali mohamed ali
{ وَقُل رَّبِّ زِدْنِي عِلْمًا }
[ كن على يقين من اعمالنا نخطئ ومن اخطائنا نتعلم ولذلك لا شي مستحيل ]
ساهم دائماً فى حل أى مشكلة او أستفسار لديك مع إضافة رد بشكره
أو دعوة لمن قدم اليك المساعدة,فالجميع هنا يعمل على مساعدة
 الاخرين لوجه الله وان تحتسب له اجر عند الله


07-09-2019 11:05 صباحا
مشاهدة مشاركة منفردة [2]
محمود ابو الدهب
menu_open
مشرف على لغات برمجة والاكسيل
rating
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 14
المشاركات : 1238
الدولة : مصر
الجنس : ذكر
تاريخ الميلاد : 4-7-1990
الدعوات : 59
يتابعهم : 6
يتابعونه : 212
قوة السمعة : 4092
الاعجاب : 476
موقعي : زيارة موقعي
 offline 
look/images/icons/i1.gif نقل عناصر الليست بوكس إلى أعلى وإلى أسفل Move ListBox Items Up And Down
بارك الله فيك استاذ ياسر وعمل سيكون الكثير بحاجه له
 

أثارت هذه المشاركة إعجاب: YasserKhalil،


توقيع :محمود ابو الدهب
لى عظيم الشرف بالانضمام لهذا الصرح العظيم
وكم أتمنى من الله
ان يعيننى ويعلمنى من علمة الواسع فهو ولي ذالك وهو على كل شي قدير

تحياتى وتقدير للجميع  محمود ابوالدهب


07-09-2019 11:50 صباحا
مشاهدة مشاركة منفردة [3]
Yasser Elaraby
menu_open عضوية موثقة
المشرف العام
rating
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 1
المشاركات : 1194
الجنس : ذكر
الدعوات : 13
مشاركات مكتبة الميديا: 25
يتابعهم : 2
يتابعونه : 600
قوة السمعة : 8656
الاعجاب : 465
موقعي : زيارة موقعي
 offline 
look/images/icons/i1.gif نقل عناصر الليست بوكس إلى أعلى وإلى أسفل Move ListBox Items Up And Down
10635-10
لاثراء الموضوع 

نضع الكود التالي في نفس الفورم

​Private Sub MoveListBoxItemUpDown(lOffset As Long)
    Dim Temp() As String
    Dim i As Long
    With Me.ListBox1
        If .ListIndex > -1 And .ListIndex + lOffset <= .ListCount - 1 And .ListIndex + lOffset >= 0 Then
            ReDim Temp(0 To .ColumnCount - 1)
            For i = 0 To .ColumnCount - 1
                Temp(i) = .List(.ListIndex + lOffset, i)
                .List(.ListIndex + lOffset, i) = .List(.ListIndex, i)
                .List(.ListIndex, i) = Temp(i)
            Next i
            .ListIndex = .ListIndex + lOffset
        End If
    End With
End Sub




ثم نضع هذا الكود في زر UP

Private Sub cmdUp_Click()
    MoveListBoxItemUpDown -1
End Sub


ونضع هذا السطر في زر Down

Private Sub cmdUp_Click()
    MoveListBoxItemUpDown 1
End Sub


تحياتي

أثارت هذه المشاركة إعجاب: YasserKhalil، محمود ابو الدهب، مهند محسن،


توقيع :Yasser Elaraby
663013020



07-09-2019 12:17 مساء
مشاهدة مشاركة منفردة [4]
YasserKhalil
menu_open عضوية موثقة
مراقب عام
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 3
المشاركات : 7274
الجنس : ذكر
تاريخ الميلاد : 1-10-1978
الدعوات : 19
يتابعهم : 0
يتابعونه : 411
قوة السمعة : 20933
الاعجاب : 1487
 offline 
look/images/icons/i1.gif نقل عناصر الليست بوكس إلى أعلى وإلى أسفل Move ListBox Items Up And Down
بارك الله فيكم إخواني الكرام وجزيتم خيراً

مشكور أخي الغالي ياسر العربي على إثراء الموضوع بهذا الكود المتميز

أثارت هذه المشاركة إعجاب: Yasser Elaraby،




07-09-2019 12:21 مساء
مشاهدة مشاركة منفردة [5]
محمود ابو الدهب
menu_open
مشرف على لغات برمجة والاكسيل
rating
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 14
المشاركات : 1238
الدولة : مصر
الجنس : ذكر
تاريخ الميلاد : 4-7-1990
الدعوات : 59
يتابعهم : 6
يتابعونه : 212
قوة السمعة : 4092
الاعجاب : 476
موقعي : زيارة موقعي
 offline 
look/images/icons/i1.gif نقل عناصر الليست بوكس إلى أعلى وإلى أسفل Move ListBox Items Up And Down
يا حلو انته يا حلوا قشطه rolleyes
ضيف يا خويا وماله البحر بيحب السمك biggrin2

أثارت هذه المشاركة إعجاب: YasserKhalil، Yasser Elaraby،


توقيع :محمود ابو الدهب
لى عظيم الشرف بالانضمام لهذا الصرح العظيم
وكم أتمنى من الله
ان يعيننى ويعلمنى من علمة الواسع فهو ولي ذالك وهو على كل شي قدير

تحياتى وتقدير للجميع  محمود ابوالدهب


07-09-2019 12:25 مساء
مشاهدة مشاركة منفردة [6]
YasserKhalil
menu_open عضوية موثقة
مراقب عام
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 3
المشاركات : 7274
الجنس : ذكر
تاريخ الميلاد : 1-10-1978
الدعوات : 19
يتابعهم : 0
يتابعونه : 411
قوة السمعة : 20933
الاعجاب : 1487
 offline 
look/images/icons/i1.gif نقل عناصر الليست بوكس إلى أعلى وإلى أسفل Move ListBox Items Up And Down
تم تحديث الملفات المرفقة في أول مشاركة ووضع ملف آخر فيه تطبيق لكود أخونا ياسر العربي

أثارت هذه المشاركة إعجاب: محمود ابو الدهب، Yasser Elaraby،




07-09-2019 12:38 مساء
مشاهدة مشاركة منفردة [7]
محمود ابو الدهب
menu_open
مشرف على لغات برمجة والاكسيل
rating
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 14
المشاركات : 1238
الدولة : مصر
الجنس : ذكر
تاريخ الميلاد : 4-7-1990
الدعوات : 59
يتابعهم : 6
يتابعونه : 212
قوة السمعة : 4092
الاعجاب : 476
موقعي : زيارة موقعي
 offline 
look/images/icons/i1.gif نقل عناصر الليست بوكس إلى أعلى وإلى أسفل Move ListBox Items Up And Down
بارك الله فيكم جميعا وشكرا لكم على اعمالكم الرائعه جزاكم الله عنا كل الخير
 

أثارت هذه المشاركة إعجاب: YasserKhalil، Yasser Elaraby،


توقيع :محمود ابو الدهب
لى عظيم الشرف بالانضمام لهذا الصرح العظيم
وكم أتمنى من الله
ان يعيننى ويعلمنى من علمة الواسع فهو ولي ذالك وهو على كل شي قدير

تحياتى وتقدير للجميع  محمود ابوالدهب


07-09-2019 01:30 مساء
مشاهدة مشاركة منفردة [8]
YasserKhalil
menu_open عضوية موثقة
مراقب عام
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 3
المشاركات : 7274
الجنس : ذكر
تاريخ الميلاد : 1-10-1978
الدعوات : 19
يتابعهم : 0
يتابعونه : 411
قوة السمعة : 20933
الاعجاب : 1487
 offline 
look/images/icons/i1.gif نقل عناصر الليست بوكس إلى أعلى وإلى أسفل Move ListBox Items Up And Down
وجزيت خيراً أخي الغالي محمود ومشكور على دعواتك الطيبة

أثارت هذه المشاركة إعجاب: Yasser Elaraby،




07-09-2019 01:55 مساء
مشاهدة مشاركة منفردة [9]
Yasser Elaraby
menu_open عضوية موثقة
المشرف العام
rating
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 1
المشاركات : 1194
الجنس : ذكر
الدعوات : 13
مشاركات مكتبة الميديا: 25
يتابعهم : 2
يتابعونه : 600
قوة السمعة : 8656
الاعجاب : 465
موقعي : زيارة موقعي
 offline 
look/images/icons/i1.gif نقل عناصر الليست بوكس إلى أعلى وإلى أسفل Move ListBox Items Up And Down
4077-3

أثارت هذه المشاركة إعجاب: YasserKhalil،


توقيع :Yasser Elaraby
663013020





الكلمات الدلالية
Down ، Items ، ListBox ، Move ، أسفل ، وإلى ، أعلى ، بوكس ، الليست ، عناصر ،


 







اخلاء مسئولية: يخلى منتدى أكاديمية الصقر للتدريب مسئوليته عن اى مواضيع او مشاركات تندرج داخل الموقع ويحثكم على التواصل معنا ان كانت هناك اى إنتهاكات تتضمن اى انتهاك لحقوق الملكية الفكرية او الادبية لاى جهة - بالتواصل معنا من خلال نموذج مراسلة الإدارة .وسيتم اتخاذ الاجراءات اللازمة.
سياسة النشر: التعليقات المنشورة لا تعبر عن رأي منتدى أكاديمية الصقر للتدريب ولا نتحمل أي مسؤولية قانونية حيال ذلك ويتحمل كاتبها مسؤولية النشر.



الساعة الآن 10:32 مساء

أعلن هنا
أعلن هنا
أعلن هنا