إجمالي مرات مشاهدة الصفحة

الثلاثاء، 26 أبريل 2016

تعبئة قائمة منسدلة في الفورم من بيانات مفلترة Fill ComboBox With Unique From Filtered Range

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

أقدم لكم كود يوضع في حدث الفورم ، ويقوم الكود بتعبئة الكومبوبوكس أو القائمة المنسدلة بالقيم الفريدة في نطاق تم تصفيته أو فلترته.


بفرض أن لديك النطاق A2:A25 به بيانات وقد قمت بفلترة النطاق بعدة شروط وليكن الأرقام 1 و 4 و 8 و 7 ، والمطلوب تعبئة الكومبوبوكس بتلك القيم بدون تكرارها في القائمة المنسدلة ، لتصبح بهذا الشكل

قم بوضع أداة الكومبوبوكس على الفورم ، ثم ضع الكود التالي في حدث الفورم 

Private Sub UserForm_Initialize()
    Dim Cel As Range
    
    With CreateObject("Scripting.Dictionary")
        .CompareMode = 1
        
        For Each Cel In Range("A2:A" & Range("A" & Rows.Count).End(xlUp).Row).SpecialCells(xlCellTypeVisible).SpecialCells(xlCellTypeConstants)
            .Item(Cel.Value) = 1
        Next Cel
        
        Me.ComboBox1.List = .Keys
    End With
    
    Me.ComboBox1.ListIndex = 0
End Sub

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

هناك 6 تعليقات:

  1. ماشاء الله
    مبدع
    وفقك الله

    ردحذف
  2. بارك الله فيك أخي العزيز أسامة ..مشكور على مرورك العطر بالمدونة

    ردحذف
  3. بارك الله فيك يا اخي
    لوسمحت كيف بدي احل مشكلة الكمبوبوكس في كل خلية على اكسل
    عمودي على اكسل اريدها تتكرر في كل صف
    وشكرا

    ردحذف
  4. هل تقصد القائمة المنسدلة أم الكومبوبوكس؟
    الكومبوبوكس الذي ذكر في الموضوع يوضع على الفورم

    ردحذف
  5. مبلغ القرض القسط التامي الحد الادنى للقرض الحد الاقصى للقرض القسط التاميني
    22300 ؟؟؟ 1 2000 5.5
    2000 2001 5000 10.5
    3000 5001 10000 20.5
    5000 10001 15000 15.5
    6500 15001 20000 20.5
    10500 20001 25000 25.5
    500
    2500

    ردحذف
  6. لم أفهم المطلوب من التعليق ، بالنسبة للطلبات يمكنك طرح موضوع في المنتدى ليشارك فيه الجميع

    ردحذف