اذهب الي المحتوي
أوفيسنا

كود لعمل قائمة منسدلة


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

السلام عليكم

جرب الكود التالى كأحد الطرق  علة المطلوب تماماً

Private Sub Worksheet_Change(ByVal Target As Range)
    
    On Error Resume Next

    If Target.Column = 4 Then
        
        Dim lRow As Long
        lRow = Sheet3.Range("C" & Rows.Count).End(xlUp).Row
        Sheet3.Range("C4:C" & lRow).Name = "MyList"
        
        With Range("B" & Target.Row).Validation
            .Delete
            .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
                 xlBetween, Formula1:="=MyList"

        End With
    End If
    
End Sub

تفضل المرفق

قائمة منسدلة.rar

تم تعديل بواسطه خالد الرشيدى
  • Like 3
رابط هذا التعليق
شارك

في ١٥‏/٥‏/٢٠١٧ at 12:43, خالد الرشيدى said:

السلام عليكم

جرب الكود التالى كأحد الطرق  علة المطلوب تماماً


Private Sub Worksheet_Change(ByVal Target As Range)
    
    On Error Resume Next

    If Target.Column = 4 Then
        
        Dim lRow As Long
        lRow = Sheet3.Range("C" & Rows.Count).End(xlUp).Row
        Sheet3.Range("C4:C" & lRow).Name = "MyList"
        
        With Range("B" & Target.Row).Validation
            .Delete
            .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
                 xlBetween, Formula1:="=MyList"

        End With
    End If
    
End Sub

تفضل المرفق

قائمة منسدلة.rar

بجد تسلم ايدك الله ينور عليك فعلا هو دا المطلوب لكن ليا رجاء لو تكرمت

 قائمة منسدلة.rar

591d63790c4a4_.PNG.80636fdc1d275ac9fcb02ebc61e0b6de.PNG

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

18 ساعات مضت, ابو حمادة said:

بجد تسلم ايدك الله ينور عليك فعلا هو دا المطلوب لكن ليا رجاء لو تكرمت

 قائمة منسدلة.rar

591d63790c4a4_.PNG.80636fdc1d275ac9fcb02ebc61e0b6de.PNG

ياتري الموضوع صعب تنفيذه ولا ايه عايز اعرف على الاقل اشوف اى حل بالمعادلات 

اتمني الرد

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

السلام عليكم

اخى الكريم لما الحاجه الى كل هذه الاكواد وهناك الخاصيه الرائعه (( Format as Table ))  -  مع كل سطر جديد ستجد انها طبقت القوائم المنسدلة والمعادلات والتنسيقات -- فقط ادخل بالخلية  D6   احد القيم 155- 18   ولاحظ النتائج -- ليس هذا وفقط بل اذا قمت باضافه كشف اخر سيتم تحديث القائمة المنسدلة باسم الكشف الجديد بشكل تلقائي 

khaled-tabel.rar

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

شكرا ليك اخى الفاضل بس ممكن توضحلى فين اكتب الدوال المطلوبه علما ان المعادلات الى العمود BX ودخلت على محرر الاكواد لم اجد اى كود وملحوظة كمان بالنسبه للعمود ال بكتب فيه 18 او 155 بيكون اختياري ايضا قائمة منسدله اقصد

يريت توضحلى اين اجد الكود

علما انى اعمل علي اوفيس 2007 عربي وخبرتي محدوده اوى 

واريد القيم في المعادلات هي ال تظهر بدلا من المعادله لسببين السبب الاول ان في بعض المعادلات بتكون النتيجه مش صحيحه بنسبة 100% ويجب تعديلها يدوي والسبب الاخر لتخفيف حجم لملف لانه كبير جدا

 

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

اخي الكريم 

زكرت بالاعلى انى لم استخدم اى كود وانما خاصيه ( Format as Table  ) -- بقائمة   Home --  وتتيح للمستخدم امكانيات كبيره عند التعامل مع كميات كبيره من البيانات - والتعامل معها بسيط - اطلع حضرتك على اليوتيوب لمعرفه بعض المعلومات عنها --

بالنسبه ان حضرتك بتقول ان حتى العمود D يكون قائمة منسدله -- كيف وسبق ان حضرتك قولت ان حدث انطلاق الكود هو وضع قيمه بهذا العمود كما انهم قيمتين وفقط لا اعتقد انك بحاجه الى قائمة منسدلة 

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

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

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

1 دقيقه مضت, خالد الرشيدى said:

اخي الكريم 

زكرت بالاعلى انى لم استخدم اى كود وانما خاصيه ( Format as Table  ) -- بقائمة   Home --  وتتيح للمستخدم امكانيات كبيره عند التعامل مع كميات كبيره من البيانات - والتعامل معها بسيط - اطلع حضرتك على اليوتيوب لمعرفه بعض المعلومات عنها --

بالنسبه ان حضرتك بتقول ان حتى العمود D يكون قائمة منسدله -- كيف وسبق ان حضرتك قولت ان حدث انطلاق الكود هو وضع قيمه بهذا العمود كما انهم قيمتين وفقط لا اعتقد انك بحاجه الى قائمة منسدلة 

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

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

انا اكيد بشكر حضرتك جدا والله لاهتمامك  بس اريد بعض التوضيح بالنسبه ل حدث الانطلاق ليس هو قيمة العمود ال به 18 او155 انطلاق الكود هو وضع قيمه في عمود قيمة المبلغ  

ثانيا انا كما وضح سابقا اريد وضع قيم نتيجة المعادله في الخليه وليس المعادله كما  ذكرت حضرتك لتخفيف حجم الملف وايضا لسهولة تغيير اي قيمة خطأ اذا حدث خطأ اما بالنسبه لانهم قيمتين فقط ولكنهم مهمين جدا لان مرتب الموظف مرتبط باحدهما وفي حالة كتتابة قيمه فيهمخطا سوف يترتب عليه اخطاء كثيره مثلا ممكن اكتب 81 بدلا من 18 او 515 بدلا من 155 لان مدخل البيانات اغلبهم خبرتهم في التعالم في الكمبيوتتر بسيطه جدا  وممكن يخطا بدون قص عند كتابه اي رقم ولذلك وضعتها في الملف الاساسي في قائمة منسدله بحيث لاتقبل الاخطأء قدر ماستطعنا

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

علما ان عدد الصفوف تقريبا تتخطي 500شخص على الاقل

ولك مني تحياتي 

 

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

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

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

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

Important Information