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

يوزرفورم بحث و تعديل وحذف مرن يصلح لأي قاعدة بيانات


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

السلام عليكم استاذ ربيع و السلام على جميع الاخوة الافاضل

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

Private Sub ComboBox2_Change()
Dim Ws As Worksheet
Dim sName As String: sName = Me.ComboBox2.Value
Set Ws = ThisWorkbook.Sheets(sName)
Dim iRow As Long: iRow = Ws.Cells(Rows.Count, 1).End(xlUp).Row + 0
If Not ComboBox2.Text = "" Then
 Sheets(ComboBox2.Text).Select
end if
end sub
,وهذا في يوزر فورم انيسياليز

Private Sub UserForm_Initialize()
Dim Ws As Worksheet
For Each Ws In ThisWorkbook.Sheets
Me.ComboBox2.AddItem Ws.Name
End If
Next

 وانا اريد التعديل لجعل الملف يتعامل مع ملف به اكثر من صفحة ولكم مني جزيل الشكر"data" لكن الكود في ملف الاستاذ ربيع مبرمج على اساس ورقة واحدة اسمها 

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

  • الردود 86
  • Created
  • اخر رد

Top Posters In This Topic

  • 3 weeks later...
  • 1 month later...
في 4/8/2017 at 17:24, شوقي ربيع said:

بسم الله الرحمان الرحيم

السلام عليكم

تحياتي لجميع اعضاء اوفيسنا المحترمين

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

لمتابعتي المنتدى في الاونة الاخيرة رئيت عدت تسائلات عن البحث والتعديل في الجداول و رئيت العديد من الحلول

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

لذى فكرة في برمجة فورم مرن يكون ملائم لاي جدول مهما كان عدد صوفوفه او عدد اعمدته

و لكي يتمكن اي عضو مهما كانت معرفته بالبرمجة ضعيفة من استعماله بسهولة

ووصلة الى هذا الفورم الذي ارجو ان اكون قد وفقت في فكرته وان يستفيد منه الاغلبية

Capture.PNG.f8819a5a27df5ac4aef64699bb8ba42d.PNG

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

كما ان البحث يتميز بالبحث بأول حرف من الكمة او اي جزء منها حسب احتياجك

وايضا تتميز عملية البحث بالسرعة الفائقة لاني اعتمدت على المصفوفات للوصول الى ذلك و تعرفون قوة المصفوفات و فعاليتعها

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

نأتي الان الى طريقة استعمال الفورم هذا مع ملفك الخاص

اولا

اذهب الى محرر الاكواد تجد موديل باسم ModulePublic

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


Public Const sNomFeuil As String = "data"   'اسم ورقة العمل التي تحمل قاعدة البيانات
Public Const sTableau  As String = "tbData" ' اسم جدول قاعدة البيانات

اضن ان الامر واضح

تصع اسم الشيت الذي يحوي الجدول مكان عبارة "data"

واسم الجدول نفسه مكان عبارة "tbData"

ملاحظة : يجب ان تكون قاعدة البيانات عبارة عن جدول

58e8e0948a1a3_Capture3-Copie.PNG.e149fcc037588f72c95d7bf9408327c0.PNG

لايهم عدد اعمدة ولا صفوفه المهم ان يكون جدول

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

ثانيا

نأتي الى الاعمدة التي تحتاج قوائم في مثالنا لدين العمود 4 و العمود الاخير يحتاجون ان يمثلو في الفورم على شكر قوائم (كمبوبكس)

لتنفيذ ذالك

قم بأنشاء القوائم الازمة في اي شيت تريد و اعطي كل مدى قائمة اسم معين

في المثال الخاص بنا سمينا نطاق قائمة الجنس ب list1 كما هو موصح في الصورة

Capture4.PNG.42b96c1b1c27cd573c305ff709532cdf.PNG

ثم اذهب الى رأس العمود المستهدف قم بادراج تعليق له و اكتب داخل التعليق نفس  اسم نطاق القائمة و انتهى الامر

Capture3.PNG.3d6ce2e65baeb73b2125002caf5d8247.PNG

ارجو ان اكون قد وفقت في الشرح وان يستفيد أكبر عدد من الاعضاء من هذا العمل

ملاحضة: تنسيق عرض اعمد اليست يكون بتنسيقك ععرض اعمدة الجدول نفسه من الشيت

            و الفورم يكتشف العمود الذي يحوي تواريخ تلقائيا

اي ملاحظة او استفسار او اضافة تحتاجونها للفورم لا تترددو في طلبي

اهدي هذا العمل الى الغائبين الحاضرين في قلوبنا

الاخ ضاحي الغريب و الاستاد عبد الله باقشير

تحياتي للجميع

 

 

UserForm Flexibles.rar

 

نفسي اتعلم هذه الاشياء الجميلة

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

  • 2 weeks later...
في ٨‏/٤‏/٢٠١٧ at 06:24, شوقي ربيع said:

بسم الله الرحمان الرحيم

السلام عليكم

تحياتي لجميع اعضاء اوفيسنا المحترمين

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

لمتابعتي المنتدى في الاونة الاخيرة رئيت عدت تسائلات عن البحث والتعديل في الجداول و رئيت العديد من الحلول

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

لذى فكرة في برمجة فورم مرن يكون ملائم لاي جدول مهما كان عدد صوفوفه او عدد اعمدته

و لكي يتمكن اي عضو مهما كانت معرفته بالبرمجة ضعيفة من استعماله بسهولة

ووصلة الى هذا الفورم الذي ارجو ان اكون قد وفقت في فكرته وان يستفيد منه الاغلبية

Capture.PNG.f8819a5a27df5ac4aef64699bb8ba42d.PNG

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

كما ان البحث يتميز بالبحث بأول حرف من الكمة او اي جزء منها حسب احتياجك

وايضا تتميز عملية البحث بالسرعة الفائقة لاني اعتمدت على المصفوفات للوصول الى ذلك و تعرفون قوة المصفوفات و فعاليتعها

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

نأتي الان الى طريقة استعمال الفورم هذا مع ملفك الخاص

اولا

اذهب الى محرر الاكواد تجد موديل باسم ModulePublic

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


Public Const sNomFeuil As String = "data"   'اسم ورقة العمل التي تحمل قاعدة البيانات
Public Const sTableau  As String = "tbData" ' اسم جدول قاعدة البيانات

اضن ان الامر واضح

تصع اسم الشيت الذي يحوي الجدول مكان عبارة "data"

واسم الجدول نفسه مكان عبارة "tbData"

ملاحظة : يجب ان تكون قاعدة البيانات عبارة عن جدول

58e8e0948a1a3_Capture3-Copie.PNG.e149fcc037588f72c95d7bf9408327c0.PNG

لايهم عدد اعمدة ولا صفوفه المهم ان يكون جدول

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

ثانيا

نأتي الى الاعمدة التي تحتاج قوائم في مثالنا لدين العمود 4 و العمود الاخير يحتاجون ان يمثلو في الفورم على شكر قوائم (كمبوبكس)

لتنفيذ ذالك

قم بأنشاء القوائم الازمة في اي شيت تريد و اعطي كل مدى قائمة اسم معين

في المثال الخاص بنا سمينا نطاق قائمة الجنس ب list1 كما هو موصح في الصورة

Capture4.PNG.42b96c1b1c27cd573c305ff709532cdf.PNG

ثم اذهب الى رأس العمود المستهدف قم بادراج تعليق له و اكتب داخل التعليق نفس  اسم نطاق القائمة و انتهى الامر

Capture3.PNG.3d6ce2e65baeb73b2125002caf5d8247.PNG

ارجو ان اكون قد وفقت في الشرح وان يستفيد أكبر عدد من الاعضاء من هذا العمل

ملاحضة: تنسيق عرض اعمد اليست يكون بتنسيقك ععرض اعمدة الجدول نفسه من الشيت

            و الفورم يكتشف العمود الذي يحوي تواريخ تلقائيا

اي ملاحظة او استفسار او اضافة تحتاجونها للفورم لا تترددو في طلبي

اهدي هذا العمل الى الغائبين الحاضرين في قلوبنا

الاخ ضاحي الغريب و الاستاد عبد الله باقشير

تحياتي للجميع

 

 

UserForm Flexibles.rar

 

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

UserForm Flexibles.rar

تم تعديل بواسطه 235Waheed
  • Thanks 1
رابط هذا التعليق
شارك

  • 4 weeks later...
  • 3 months later...
في 4/9/2017 at 16:33, محمد الخازمي said:

 

اريد طباعة السند نشختين فى صفحة واحدة اصل وصورة واريد وضع شعار المؤسسة على السندات

 

 

 

في 4/13/2017 at 09:33, ضاحي الغريب said:

 

 

في 4/8/2017 at 17:37, ضاحي الغريب said:

تلوح في سمائنا دوما نجوم براقه

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

نترقب أضاءتها بقلوب ولهانه

ونسعد بلمعانها في سمائنا كل ساعه

فاستحقت وبكل فخر ان يرفع اسمها في عليانا

اخي وصديقي الغالي / شوقي ربيع

المتميز دائما نجم من نجوم اوفيسنا سيظل يجمعنا سويا الكثير والكثير

 

 

 

 

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

  • 4 months later...

ما شاء الله عليك شوقي ربيع
هل من الممكن ان يتم عمل BOLD لـ FONT بالتكيست ليكون اوضح من كده
فى مربعات الجزء الايسر 
تحياتى و ايام مباركه

Capture.PNG.f8819a5a27df5ac4aef64699bb8ba42d.PNG

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

  • 4 months later...

هل بالامكان البحث بشرطين وشيء الثاني كيفية تغير الوان الخطوط بفورم الادخال 

وشكراً لك خدمتني كثير بهذا العمل 

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

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

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

زائر
هذا الموضوع مغلق.
×
×
  • اضف...

Important Information