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

( موضوع مميز ) كيف امنع التكرار في ListBox عند التنقل بين OptionButton


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

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

تحية طيبه للجميع

واجهتني بعض العقبات في عمل برنامج رواتب ارجو مساعدتي فيها.

كيف امنع التكرار في (ListBox1 )عند التنقل بين (OptionButton1) و (OptionButton2)و (OptionButton3)

وكذلك كيف امنع التكرار في (ListBox2 ) عند التنقل في (ListBox1 ) .

ولكم جزيل الشكر

KH_3.rar

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

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

أخي الكريم لست أدري إن كان الملف المرفق يفي بالغرض، فيه قمت بتغيير السطر

Me.ListBox1.Value= ""
بالسطر
Me.ListBox1.Clear
وأضفت السطر
Me.ListBox2.Clear

في بداية كود ListBox1

وهذه الأوامر تقوم بمسح مضمون ListBox قبل عرضه ثانية...

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

والله أعلم

KH_3.rar

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

السلام عليكم

شكراً لك اخي hben

هذا ماارته بالضبط .

ولي سؤال اخر فاتني ان اضيفه

هل استطيع ان اجعل الوقت يتغير اذا اضفت (TextBox30) الى الفورم .

انا حاولت وبائة محاولتي بالفشل, اضافة السطر التالي

TextBox30.Value = Format(Now, "hh:mm:ss AM/PM")

وطبعاً الوقت لايتغير بسبب انه لابد من كود خاص بالوقت .

وشكراً لك اخي الكريم

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

السلام عليكم

اخي ابو محمد

مرفق الملف ويشمل ساعة تتغير باستمرار

KH_3.rar

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

السلام عليكم

شكرا لك اخي عماد

حاول اضافة الكود الى البرنامج المرفق ولكن ولم تعمل الساعة وكذلك القوائم المنسدلة(ComboBox)

ارجوا تحديد الخطأء وشرحه للفائدة .

اخي عماد مالنا غنى عنك في خبرتك بالاكواد وكذلك الشكل الجمالي للبرنامج

تحياتي وتقديري

KH_4.rar

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

السلام عليكم

اخي ابو محمد

لم يعمل معك لانه الفورم يجب تغيير بعض اعدادات الفورم

وبالذات خاصية ShowMoudels

لان هذه الاكواد خاصة وحساسة بعض الشئ

وتم تعديل الملف وتغير بعض الاكواد التي يمكن اختصارها بعض الشئ

اما مسالة القوالئم المنسدلة فلم افهم ما المطلوب بالتحديد

KH_4.rar

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

السلام عليكم

اخي عماد عمل اكثر من رائع الله يجزاك الف الف خييير .

يوجد شرح مصور بالمرفقات عن سؤالي السابق عن القوائم المنسدلة

تحياتي وتقديري لك

post-5413-0-16952300-1293239098_thumb.jp

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

السلام عليكم

اخي ابو محمد مرفق الملف وبه التعديل

لا اعلم اذا كان ذلك محاسبيا ام لا

فهذا النسب كان يتم ضربها بالحد الادنى من الراتب

وجعلته يضربها بالراتب الاساسي

راجع الملف ان كان ذلك صحيحا

اعلمني بردك وغير ذلك مستعدين

KH_5.rar

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

السلام عليكم

اخي عماد

بدل ارتباط بسوق العمل وبدل تميز يضرب في الراتب الاساسي

وبدل التخصص يضرب في الحد الادنى من الراتب .

------------------------------------

عند التنقل في الراتب الاساسي ثما الرجوع الى اسماء المدربين اريده ان يمسح التالي :

(ListBox2)و (Label13)و (Label21)

و (Label14) و (Label8)و (Label4)

-------------------------------------

اريد اضافة صوت في المستوى عند التنقل في (ListBox1) والراتب الاساسي(ListBox2)

--------------------------------------

ولدي بعض الاضافات على البرنامج

اريد ان اضيف ازر(CommandButton1) للبرنامج ويكون اسمه (حساب الراتب للمبتعثين )

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

والطريقة الحسابية هي :

حسم التقاعد = الراتب الاساسي ضرب 0.09

صافي الراتب = حسم التقاعد طرح الراتب الاساسي قسمة /2

اساسي الدرجة الحالية = الراتب الاساسي

------------------------------------

الطباعة :

اريد زر طباعة (بالفورم الاول )والمعلومات المطلوب طباعتها بالمرفق BB_1

وكذلك زر طباعة يكون على (الفورم الثاني )الخاص بالمبتعثين والمعلومات المطلوب طباعتها بالمرفق aa_1 .

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

--------------------

**********************************

اخي عماد صحيح انني اثقلت عليك بالطلابات والتعديلات على البرنامج

ولكن لسعت صدرك وحبك للخير للاخرين هو الذي جعلني ان اكمل معك البرنامج

مع العلم انني تعلمت الكثير الكثير على يدك اخي عماد وذالك لبساطت شرحك وحرصك لتوصيل المعلومة

******************************************

تحياتي وتقديري

post-5413-0-28536300-1293291466_thumb.jp

post-5413-0-30903200-1293291485_thumb.jp

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

السلام عليكم

اخي ابو محمد

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

وجعلت الفورم على كامل الصفحة لكي لا يتم التعامل بالصفحات

نهائيا

اما الطلب الثاني ( الفورم الثاني ) قد لا اكون قد فهمت

المطلوب بالصورة الكافية

اي ذا كنت تريد تقريبا نفس الفورم مع ازالة بعض البتود

وحساب الصافي بالنسبة للبنود المحددة فقط فلا اعتقد اننا بحاجة

الى فورم اخر واليك الفكرة

---

تم اضافة كبسة للمبتعثين وهي تعمل على تحديد البنود التي يستطيع المستخدم

التعامل معها التي حددتها انت ويتم الحساب بناءا على ذلك

قد لا اكون قد اوصلت الفكرة وعلى العموم شاهد الملف وفكرته

واعتقد انها افضل من اضافة فورم جديد وغير ذلك ابلغني

------

تم اضافة زري طباعة للحالتين وتعمل على الطباعة وانت على الفورم

وللعلم لم اجرب امر الطباعة فعليا لكن اعتقد انه جاهز

KH_5.rar

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

السلام عليكم

تحياتي اخي عماد

الفكره جداً جداً روعة من ناحية الغاء الفورم الثاني

والعمل فقط على الفورم الاول بس اضافة بسيطه اريد مع التجميد الذي وضعت انت

ان تضيف لون اخر لكي يبين اكثر للمستخدم انها معطلة كي يعلم ان البدلات لا تشمله .

--------------

ومن ناحية الفورم الاول يكون على كامل الصفحة اعتقد كان الاول افضل واجمل ان يكون حجم الفورم متوسط ,

وهيا كتالي

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

'Application.Visible = False

'ThisWorkbook.Saved = False

'frmTimer.Show

وبهاذه الحالة يكون الفورم هو الظاهر في الحجم المتوسط واوراق البرنامج مخفية .

وكذلك عند الخروج من البرنامج اظهار الصفحت وااقفال الفورم وعدم الحفظ

--------------

اريد اضافة جملة ( تفاصيل الراتب ) موجود صورة للتوضيل بالمرفقات .

التاريخ يكون اربع خانات لسنة .

---------------

الطباعة :

لو فرضاً انني لم اثبت البرنامج الخاص بالطابعة على الكمبيوتر

هل يوجد كود يتجاهل الخطاء في حالة التراجع عن الطباعة

---------------

اريد اضافة شعارالعمل للفورم

الشعار موجود بالمرفقات

---------------------

ارجو التبديل الكتابة الموجودة في الاعلى من برنامج التدريب الوطني

الى برنامج سلم رواتب أعضاء هيئة التدريب

-------------------

أستاذ عماد لدي بعض الأسئلة

واريدك ان توضحلي بعض الامور التي لم افهمها في بعض الاكواد مثل

Me.Controls("ComboBox" & i - 2).Enabled = False

ما المقصود من ( 2-i )

Me.Controls("Label" & i + 33).Enabled = False

ما المقصود من ( 33+i )

*******

ListBox2.RowSource = "aaaa"

هل المقصود من (aaaa )ان تأخذ قيمة فارغ .

*******

If nn <> 1 Then

ارجوا شرح التالي بالتفصيل لانني لم افهم ماذا تعني ومتى تستخدم

nn

nn = 1

Next i

-------------------------

تحياتي وتقديري لك

BB_3.rar

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

السلام عليكم

اخي ابو محمد

لك ما تريد ... انتظرني في الغد

بارك الله فيك

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

السلام عليكم

اخي ابو محمد مرفق ملف واليك التالي :

--------------

بالنسبة للتجميد فعند التجميد لا يوجد الى لون واحد فقط

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

وكذلك الوان الخلفيات الغير مستخدمة

--------------

تم تصغير الفورم مع وضع خاصية اخفاء التطبيق

وتم اضافة ازرار - حفظ - حفظ وخروج - خروج

عند فتح الملف تفعل خاصية اخفاء التطبيق

وعند الخروج يتم اظهاره

----------------------------

في حالة وجود خطأ في الطباعة لن يقوم بالتعرف غلى الاخطاء

وعند وجود خطأ يتم اضهار الملف تلقائيا وعلى العموم الفورم

يحتوي أصلاً على كود لتفعيل الفورم عند وجود اخطاء

-----------------------------

اما اضافة عمود اخر في القائمة الثانية فيبدو صعب بعض الشئ

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

------------------------

تم اضافة الشعار والترويسة الرئيسية

---------------------------------

---------------------------------

---------------------------------

Me.Controls("ComboBox" & i - 2).Enabled = False
عند استخدام ادوات تحكم في الفورم كثيرة ونريد عمل شئ عليهم كتغيير لون او ما شابه فليس من المنطقي ان نجعل لك اداة كود خاص بها ولكننا نقوم بشملها بكود واحد ولكن في هذه الحالة يتم اعتماد اسم الاداة للتعرف اليها أي بصورة اوضح لو كان لدينا الادوات textbox1 .. textbox2 .. textbox3 فهي عبارة عن المسمى textbox مضاف اليه رقم يميزه عن غير وبالتالي يتم جعل هذا الرقم متغير باستخدام جمل التكرار for next ( راجع هذه الجمل ) --------------------------------------
ListBox2.RowSource = "aaaa"

aaaa عبارة عن اسم نطاق لخليتين فارغتين في الصفحة وجعلهما مصدر القائمة باستخدام الجملة RowSource وهي لتعيين مصدر القوائم وانا بالاساس استخدمت مسميات عديدة في الملف لهذه القوائم ( القوائم في الصفحة الاولى هي مصدر القوائم فن اردت تغيير بعض البنود فقط غيرها في الجدول )

---------------------------

nn=1

عبارة عن اسلوب ملتوي استخدمته ليتم التفريق بين حالة الملف هل هو رئيسي او حساب المتبعثين فعندما تكون قيمة n تساوي 1 يتم تفعيل اكواد البرنامج الرئيسي وعنما تكون 2 يتم استخدام البرنامج الفرعي الاخر

و nn بالاساس هي Lable داخل الفورم وهي الخلفية التي خلف التاريخ

--------------------

-------------------

ارجو ان اكون قد اوصلت الفكرة بالشكل المطلوب

KH_5.rar

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

السلام عليكم

اخي عماد

قيمة n اين تحفظ في هذه الحالة.

بما انا aaaa عبارة عن اسم نطاق لخليتين فارغتين

هل نستطيع ان نعبر عنها بطريقة التالية

ListBox2 = ""

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

قد فهمت ماهو المقصود من سؤالي السابق شكرا لك وبارك الله فيك اخي عماد

كل شي اكتمل في البر نامج

اللا اشياء بسيطة سوف اقوم انا بتعديلها

وكذلك الشرح واضح ومجهود كبير جداً تشكر عليه

لايسعني اللا اقول جزاك الله خيراً على هذا العطاء وجعله في ميزان حسناتك .

تقبل تحياتي وشكري

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

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