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

نجوم المشاركات

  1. ياسر خليل أبو البراء

    ياسر خليل أبو البراء

    المشرفين السابقين


    • نقاط

      15

    • Posts

      13165


  2. الصـقر

    الصـقر

    الخبراء


    • نقاط

      10

    • Posts

      1836


  3. رجب جاويش

    رجب جاويش

    المشرفين السابقين


    • نقاط

      7

    • Posts

      3492


  4. ابوخليل

    ابوخليل

    أوفيسنا


    • نقاط

      7

    • Posts

      13106


Popular Content

Showing content with the highest reputation on 03/03/16 in all areas

  1. دالة offset من الدوال المهمة لتحديد نطاق الخلايا وتوفير الإجهاد على الملف.. لمعرفة كيفية عملها شاهد الصورة المرفقة ولكم تحياتي
    4 points
  2. جرب الكود بهذا الشكل Sub Test() Dim WS As Worksheet, SH As Worksheet Dim Cel As Range Dim lRow As Long Set WS = Sheets("أداة بناء الخطط"): Set SH = Sheets("ورقة1") Application.ScreenUpdating = False SH.Range("B3:M1000").ClearContents For Each Cel In WS.Range("H3:H43") If Cel.Value >= 0.9 Then lRow = SH.Cells(Rows.Count, "B").End(xlUp).Row + 1 SH.Cells(lRow, "B").Value = Cel.Offset(, 1) ElseIf Cel.Value <= 0.5 Then lRow = SH.Cells(Rows.Count, "H").End(xlUp).Row + 1 SH.Cells(lRow, "H").Value = Cel.Offset(, 1) End If Next Cel Application.ScreenUpdating = True End Sub تم إضافة سطر واحد يقوم بمسح البيانات قبل الشروع في الكود SH.Range("B3:M1000").ClearContents تقبل تحياتي
    2 points
  3. جزاكم الله خيرا معلمينا الكرام ويمكن ان نجعل الامر اكثر مرونة فنستبدل ()Date بمتغير نجعله بين يدي المستخدم
    2 points
  4. همم ، مع ان هذا السؤال غير عن السؤال الاصل ، ولكن له علاقة ما خلينا نراجع الموضوع بطريقة تختلف شوي ، وراح نوصل بنتائج اخرى يجب عدم السماح لمستخدمي البرنامج ان يدخلوا البيانات في الجداول مباشرة ، لأي سبب كان ، لهذا السبب ، فإدخال البيانات يكون عن طريق حقل في نموذج ، وهنا يمكنك ان تستخدم قاعدة التحقق من الصحة لبيانات هذا الحقل ، فالمسألة اصبحت سهلة ، حيث نستطيع ان نعمل معادلة لهذا الحدث ، فلنفترض ان اسم الحقل Date_From ، عليه تكون المعادلة شئ من هذا النوع: Between DateSerial(Year(Date()),1,1) And DateSerial(Year(Date()),12,31) واعتقد بأننا نستطيع ان نضع هذه المعادلة في قاعدة التحقق من الصحةفي الجدول كذلك جعفر
    2 points
  5. أخي الحبيب سعيد بيرم الانتقام ضروري يكون موجود عشان خاطر انضحك علينا .. مينفعش ننضرب على قفانا ونسكت (مش كدا ولا ايه) وبالنسبة للعزومة أنا مستعد وهجوع نفسي لمدة 10 أيام قبليها عشان أنتقم في الأكل (شفت الانتقام ورانا ورانا ... دا طبع والطبع غلاااااااااااااب يا أحباب) تقبلوا تحياتي
    2 points
  6. والله اللى قلبه ابيض ميعرفشى ينتقم وانت قلبك أبيض بياض القمراللى بينورالدنيا كلها وان كان على خسارتك فى الــ 15 دولار ياسيدى اخينا رجب جاويش يعوضها فى عزومة البط وانا عليّ الساقع وافر تقديرى وجزاكم الله خيرا
    2 points
  7. أخي الحبيب رجب جاويش بارك الله فيك وجزاك الله كل خير .. لقد افتقدنا وجودك لعل غيابك خير ... لا تحرمنا من تواجدك معنا فأنت في القلب تقبل وافر تقديري واحترامي
    2 points
  8. السلام عليكم تفضل أخى استخدم المعادلة الآتية للتنسيق الشرطى فى حالة الحضور =INDEX(B2:B14;MATCH(B20;A2:A14;0))="حضر" والمعادلة الآتية فى حالة عدم الحضور =INDEX(B2:B14;MATCH(B20;A2:A14;0))="لم يحضر" حضور.rar
    2 points
  9. بسم الله ما شاء الله عليك أخي الحبيب الزباري موضوع بسيط جداً لكنه في غاية الروعة والجمال ، وجماله يكمن في بساطته حيث أن الكثير ممن يتعاملون مع الإكسيل لا يعرفون استخدامات الدالة ولا يعرفون البارامترات المستخدمة .. من ثم تأتي الصورة لتعبر بشكل جميل عن استخدام الدالة ومعرفة البارامترات الخاصة بها تقبل وافر تقديري واحترامي
    2 points
  10. نفرض ان مربعات الخيار اسماؤها كالتالي a,b,c,e في حقل جديد في الاستعلام مصدر تقريرك الصق الجملة التالية expr1: IIf([a]=-1;"Excellent";IIf([b]=-1;"good";IIf([c]=-1;"fair";IIf([e]=-1;"poor")))) تعمدت وضع نصوص مسميات انجليزية حتى يسهل قراءة وفهم الكود
    2 points
  11. السلام عليكم اخى الكريم .. جزئيه جزئيه .. كما تعلم ان جلب البيانات من خلال معادلة وتنفيذ المعادلة يبدأ من وضع القيمة داخل الخلية كونك تطلب زر تحكم يبقى بتطلب كود .. ارجو مزيداً من التوضيح اما عن كود الطباعه .. وضعت لك كود داخل الملف جربة وابدى ملاحظاتك khaled2.rar
    2 points
  12. الأخ الفاضل محمد على الطيب والله انى لعاجز عن الشكر والتقدير لمجهودك ووقتك واستجابتك طريقتك رائعة وتقوم على عمل بروجرس بار لمدة ثوانى معدودة بعدما ينتهى الكود من التنفيذ وهيه ستكون مفيدة لى وساطبقها ولكن عمليا كنت ابحث عن عمل نفس البروجرس ولكن اثناء تنفيذ الماكرو حيث يتزامن نسبة تقدم الشريط مع التنفيذ الفعلى للكود ولكن لم اجد ولكن هذه الطريقة ايضا رائعة وتوضح للمستخدم انه يتم التحميل وساستخدمها, عاجز عن الشكر اخى الكريم جزالك الله كل خير.... الأخوان الفاضلان (عبد العزيز البسكرى) و (ياسر خليل ابو البراء) ايضا اود ان اشكركم حقا للاستجابة والرد والاهتمام واعتذر لكثرة سؤالى وتقبلوا تحياتى ... وهذه هيه طريقة الاخ الفاضل محمد على الطيب اخى الكريم ياسر خليل ابو البراء ^_^
    2 points
  13. رجاء خاص من الاخوة الكرام يرجى عدم اضافه اى رد على الموضوع لحين الانتهاء من كل الشروحات والسبب فى ذالك والله ما هو غير ان يكون الحلقات كلها متسلسله ورا بعض حتى يسهل لمن يريد المتابعه ان يستفيد منها ويرجى الاكتفاء بالاعجاب فقط أما ان وجد ملاحظة او خطا ما او احد يريد استفسار عن شئ ما بيكتبها بموضوع مستقل وانها ساقوم بالرد عليه تقبلوا منى وافر الاحترام والتقدير ************************************************************************************************************* بسم الله الرحمن الرحيم الاخوه الكرام بعد فترة انقطاع عن تقديم سلسلة علمنى كيف اصطاد بسبب الانشغال من الانتهاء ببرنامج EMA بشكله الجديد وبعد ان انتهيت منه بحمد لله أقدم لكم اليوم بمشيئة الله شروحات عن الفورم Form من البدايه حتى الاحتراف بأذن الله الدرس الاول 1- الدخول الى محرر الاكواد ( Visual Basic ) بالضغط على Alt+ f11 سيظهر معك الصوره التاليه 2- لو نظرنا الى الصوره السابقه سنجد كلمة Insert عليها دائره حمرا قم بالضغط على كلمة Insert ستظهر لك الصوره التاليه 3 - اضغط على UserForm كما هو مبين بالصوره اعلاه سيظهر لك الصوره التاليه 4- فى الصوره السابقه لو نظرنا لها سنجد شريط الادوات كما هو موضح بالصوره التاليه 5-صندوق ادوات التحكم ToolBox كما هو موضح بالصوره التاليه كما هو موضح بالصوره عاليه سوف نكتب نبذه صغيره عن كل عنصر من عناصر التحكم (طبعا الكلام هيكون نظرى وانا شخصيا لا اقتنع بالنظرى ) ولكن هى مجرد نبذه صغيره وبعد ذالك سوف نقوم بسرد كل عنصر فى درس مخصص بشرح وافى وكافى وبالصور والامثله العملية والتطبيقيه بأذن الله تعالى اولا :- المؤشر ( Pointer ) *** استعمال هذة الاداة ليتيح لك الانتقال الى مود الاختيار ما بين عناصر التحكم الموجودة على الفورم لتحريكها او التحكم فى حجمها .. هناك بعض اصدارات من الاكسيل عندما تختار ان تضيف زر مثلا ... يبقى المؤشر على الفورم فى وضع الاضافة/ فكلما ضغطت على الفورم بعد ذلك يضيف زر جديد وهكذا .... والحل عندها الضغط على المؤشر للهروب من هذة الدائرة المفرغة ( المرجع الاستاذ /اسامه البراوى ) ثانيا :- العنوان ( Lable ) *** هى أداه تستخدم لكتابه عنوان ثالثا :- صندوق النص ( Text Box ) *** وهى اداه تسمح للمستخدم بكتابة نص او رقم أو اى شئ بداخلها رابعا:- أداة السرد والحوار ( ComboBox) *** وهى أداه يمكن اضافة لها قائمة محدد يسمح للمستخدم الاختيار منها وهى مثل القائمة المنسدله بالاكسيل خامسا :- صندوق القوائم ( ListBox ) *** وهى اداه تشبه وعاء يحتوى على بيانات يمكن اضافه هذا المحتوى من Text Box او ComboBox ثم ترحيل هذا المحتوى الى شيت الاكسيل أو رفع محتوى من شيت الاكسيل وعرضه بـ ListBox سادسا :- صندوق الفحص (Check Box) *** تستخدم لعمل عدة صناديق فحص واختيار واحد او اكثر منهما سابعا:- زر الاختيار (Option Box ) *** تستخدم هذه الاداه فى عرض عدة بدائل امام المستخدم لاختيار احدهما فقط ثامنا:- زر التبديل (Toggle Button) *** هى اداه تشبه المفتاح الكهربائى له خيارين أما on أو Off ولكن بالاكسيل هذه الاداه لها خيارين أما true وأما false تاسعا:-الاطار (Frame) *** ويستخدم لعمل اطار لمجموعه عناصر عاشرا:- زر الامر (Command Button) *** هو زر يتم من خلال تنفيذ الكثير من الاكواد او التعليمات البرمجيه احدى عشر :- شريط التبويب ( Tab Strip) *** تتيح للمستخدم من عرض ادواته على شكل صفحات عرض اثنى عشر :- شريط الصفحات (Multi Page)*** تتيح للمستخدم من عرض ادواته على شكل صفحات عرض ثلاثة عشر :- شريط الانزلاق (Scroll Bar) *** هى اداه لها شكلان شكل عمودى واخر افقى وهى تشبه بحد كبير الاداه Spin Button اربعة عشر :- زر التدوير ( Spin Button) *** هى اداه تستخدم لزياده قيمة معينه او نقصانها ويتم تحديد قيمة عليا وقيمة سلفه ومقدار هذه القيم خامس عشر :- صوره( Image) *** وهى اداه تتيح للمستخدم من ادراج صوره بداخلها وان شاء الله كما قلت سوف نقوم بشرح كل جزء بدرس خاص **************************************************************************************************** 5- خصائص الفورم ( Properties Window) انظر للصوره التاليه هل يمكن اضافة ادوات تحكم جديدة ؟ نعم بالضغط على الزر الايمن فى اى مكان فاضى او مليان فى التول بوكس سيظهر لك Additional Controls كما هو مبين بالصوره التاليه وعند الضغط على Additional Controls ستجد الصوره التاليه فى الصوره السابقه ستجد على اليسار فى الاسفل Show وتحتها مربع به علامه صح لو قمت بحذف علامة صح من المربع ستجد القائمة على اليمين ظاهر بها كل عناصر التحكم انظر للصور التاليه بعد االه علامه الصح فى الصوره السابقه خامس خيار ضع علامه صح Calendar Control 12.0 ثم اضغط اوك ستجد ان عنصر التحكم Calendar Control 12.0 موجود بصندوق عناصر التحكم كم هو موضح بالصوره فى الصوره السابقه لو نظرت الى صندوق التحكم ستجد ان عنصر Calendar Control 12.0 ظاهر كما هو موضح بالدائره الحمراء الصغيره اضغط على هذه الايقونه ثم اذهب الى الفورم وقم بالرسم التقويم ستجده كما هو محاط بالدائره الاحمراء الكبيره فى الصوره السابقه وبكدا يبقى عرفنا ازاى نضيف عنصر تحكم جديد الى صندوق التحكم والى لقاء اخر بأذن الله فى سلسه علمنى كيف اصطاد تقبلوا تحياتى ************************************************************** اليوم بمشيئة الله هنتكلم عن اول عنصر تحكم وهو اللـ Label هنتناول الموضوع على ثلاث مراحل 1-كيفية انشاء وتصميم الـ Label على الفورم 2-كيفية التعامل والتحكم بخصائص الـ Label من شاشة الخصائص فى مرحلة التصميم 3- كيفية التعامل والتحكم بخصائص الـ Label من شاشة الخصائص فى لغة البرمجه وكتابة الاكواد أولاً :- كيفية انشاء وتصميم الـ Label على الفورم بختصار شديد شاهد الصوره والتبع الخطوات اضغط على العلامه A الموجوده فى التول بوكس واذهب بالماوس الى الفورم وقم برسم الـ Label بالابعاد التى تريدها من عرض وارتفاع 2-كيفية التعامل والتحكم بخصائص الـ Label من شاشة الخصائص فى مرحلة التصميم لو نظرنا للصورة السابقه ستجد خصائص الفورم هى رقم 3 على يسار الصورة فعند تحديد الـ Label بالماوس ( يعنى الوقوف عليه وتحديده ) ستجد خصائصه على اليسار كما هو بالصوره عاليه على اليسار وهذه هى الخصائص اللى هنقوم بشرحها اليوم انا رقمت كل الخصائص كما هو مبين بالصوره و هنمسك اهم الخصائص والاكثر شيوعا فى الاستخدام ونبدا نشرح بالتفصيل 1-الخاصيه ( Name) :- Name هو اسم الـ Label المستخدم فى الاكواد عند انشاء اى Label يقوم الفيجوال بيسك بأعطاء اسم افتراضى له Label 1 اذا قمنا بعمل Label ثانى فأن الفيجوال بيسك يعطى له اسم افتراضى Label 2 وانا افضل عدم تغيير اسماء Label الافتراضيه التى عرفها الفيجوال بيسك فعندما نريد كتابه كود خاص بالعنصر Label 1 فى حدث Click على سبيل المثال يكون بداية الكود كالتالى Private Sub Label1_Click() فأذا قمنا بتغيير اسم Label 1 كما عرفه الفيجوال بيسك الى اسم اخر من خاصيه Name وليكن مثلا غيرناه الى (Nomber ) فهنا عند كتابة كود فى حدث Click يكون كالتالى Private Sub Nomber_Click() ففى حال تغيير الاسم وعدم التزامك بالاسم داخل محرر الاكواد وكتابة كود يحدث Error لذالك انصح باستخدام الاسماء الافتراضيه للعناصر كما عرفها الفيجوال بيسك ************************************************************************************************************ 3 - الخاصيه Auto size :- هى خاصيه تحمل خيارين true و False عن اختيارك true فأن عرض الـ Label سوف يكون تلقائى حسب محتوى النص بداخله وعند اختيارك False فأنه يتم توقف خاصيه عمل عرض تلقائى حسب طول النص للـ Label وبالتالى لابد من تحديد العرض اثناء التصميم او من خلال البرمجه كما سنرى لاحقا *********************************************************************************************************** 4- الخاصيه ( Back Color):- هذه الخاصيه تتيح للمستخدم تغيير لون خلفية للـ Label على اليسار يوجد سهم اضغط عليه ستظهر لك قائمة يمكنك من خلالها اختيار اللون المناسب كما يحلو لك أنظر الصوره التاليه 5- الخاصيه ( Back Style):- هذه الخاصيه تحمل خيارين هما Fm Back Style Opague - 0 ( عند الاختيار سيتوقف عمل الخاصيه Back Color حتى ولو كان تم اختيار لون بها وليكن خلفية حمراء سيظهر الـ Label بخلفية ساده ) Fm Back Style TransParent - 1 ( عند الاختيار سيتم عمل الخاصيه Back Color وهيكون الـ Label بخلفية حسب الاختيارك من Back Color ) لذالك هذه الخاصيه مرتبطه بالخاصيه Back Color ************************************************************************************************************************** 6- الخاصيه ( Border Color):- هذه الخاصيه تتيح للمستخدم تغيير لون حدود اللـ Label على اليسار يوجد سهم اضغط عليه ستظهر لك قائمة يمكنك من خلالها اختيار اللون المناسب كما يحلو لك 7- الخاصيه ( Border Style):- هذه الخاصيه تحمل خيارين هما Fm BorderStyle none - 0 ( عند الاختيار سيتوقف عمل الخاصيه Border Color حتى ولو كان تم اختيار لون بها وليكن لون حد أحمر سيظهر الـ Label بلون حد ساده ) Fm BorderStyle Single - 1 ( عند الاختيار سيتم عمل الخاصيه Border Color وهيكون حدود الـ Label بخلفية حسب الاختيارك من Border Color) لذالك هذه الخاصيه مرتبطه بالخاصيه Border Color مثال لو اختارنا لون خلفيه للـ Label لون رمادى ولون حدود احمر شاهد الصورة ولاحظ ان الخاصيه Back Color اختيارها 1 وايضا الخاصيه Border Color اختيارها 1 شاهد الصوره ******************************************************************************************************************************************** 8- الخاصيه ( Caption):- هذه الخاصيه تتيح للمستخدم كتابة نص او رقم او اى شئ ليكون هو عنوان الـ Label الظاهر على الفورم وهى من اهم الخصائص على الاطلاق ان لم يكن الوحيده لان الليبل ما هو الا عنوان لعنصر على الفورم والخاصيه Caption هى التى يكتب بها العنوان المراد مثال لو كتبنا بسم الله الرحمن الرحيم ستجد اللـ Label على الفورم عنوانه " بسم الله الرحمن الرحيم شاهد الصوره ******************************************************************************************************************** 9- الخاصيه ( Control Tip Text ):- هذه الخاصيه عند كتابة اى شئ بداخلها فأنها تعرض النص كتلميح عند وقوف الماوس على الـ Label ****************************************************************************************************** 11- الخاصيه ( Font ):- وهذه الخاصيه تتيح للمستخدم التحكم فى نوع وسماكة وحجم الخط للنص داخل اللـ Label الافتراضى فى الفيجوال بيسك نوع الخط هو ( Tahoma ) والسماكه هى (Regular) وحجم الخط هو ( 8) يوجد على يسار الخاصيه مربع صغير به ثلاث نقاط عند الضغط عليه ستجد شاشة الFont كما هو بالصوره عاليه اختر منها نوع وسماكة وحجم الخط للنص ثم اضغط اوك ************************************************************************************************ 12- الخاصيه ( Fore Color ):- وهذه الخاصيه تتيح للمستخدم التحكم فى اختيار لون الخط للنص داخل الـ Label مثال لو اخترنا لون الاخط اصفر شاهد الصورة ************************************************************************************************************ 13- الخاصيه ( Height ) وهذه الخاصيه تتيح للمستخدم التحكم فى ارتفاع الـ Label فيمكنك أما من خلال التصميم السحب بالماوس للاسفل لتحديد الارتفاع للـ Label أو كتابة رقم للارتفاع فى الخاصيه Height **************************************************************************************************************************** 15- الخاصيه (Left) :- وهذه الخاصيه تتيح للمستخدم التحكم فى بعد الـ Label عن الضلع الايسر للفورم 25-الخاصيه (Top) :- وهذه الخاصيه تتيح للمستخدم التحكم فى بعد الـ Label عن الضلع الاعلى للفورم مثال لو وضعنا قيمة Left 150 *** وقيمة Top 100 ستجد الصوره التالية ************************************************************************************************************************************************* 27-الخاصيه ( Width) هذه الخاصيه تتيح للمستخدم التحكم فى عرض الـ Label كما يمكن ايضا التحكم فى عرض الـ Label من خلال التصميم على الفورم بالماوس ************************************************************************************************* 24-الخاصيه (Text Align) :- وهذه الخاصيه تتيح للمستخدم التحكم فى اتجاه النص ( محاذاه النص ) داخل الـ Label هل يكون يميناً أو يساراً أو وسط Label لو ذهبت للخصائص وعند الخاصيه Text Align ستجد سهم اضغط عليه ستجد 3 خيارات امامك وهى fm Text Align Left -1 عند الاختيار ستجد ان اتجاه النص داخل Label يبداء من اليسار fm Text Align Center -2 عند الاختيار ستجد ان اتجاه النص داخل Label فى المنتصف fm Text Align Right -3 عند الاختيار ستجد ان اتجاه النص داخل Label يبداء من اليمين مثال عند اختيار رقم 2 شاهد الصورة ************************************************************************************************************************** 26-الخاصيه (Visible ) وهذه الخاصيه تتيح للمستخدم التحكم فى ظهور او عدم ظهور Label عند عرض الفورم وعند الضغط على السهم المجاور لها ستجد لها خيارين True و False عندد اختيار True سوف يظهر الـ Label على الفورم عند فتحه ( وهذا هو الخيار الافتراضى من الفيجوال بيسك ) وعند اختيار False ٍسوف يختفى الـ Label على الفورم عند فتحه يعنى هيكون غير ظاهر ومخفى لا يراه المستخدم *********************************************************************************************************** 20- الخاصيه ( ٍِSpecial Effect ) هذه الخاصيه من الخصائص الهامه للـ Label وهى تعطى اشكال مبهره ومميزه للـ Label ولها خمس اشكال شاهد الصوره التاليه *********************************************************************************************************** 3- كيفية التعامل والتحكم بخصائص الـ Label من شاشة الخصائص فى لغة البرمجه وكتابة الاكواد هنجرب بمثال عملى لكيفية التحكم بخصائص اللـ Label فى لغة البرمجه وهنوضع هذه الاكواد فى حدث فتح الفورم اضغط دبل كليك على الفورم وهنعمل كود فى حدث فتح الفورم اتبع الصوره التالية فبعد تنفيذ الخطوات كما هو موضح بالصوره السابقه ستجد التالى شاهد الصوره فى الصوره السابقه المربع الاحمر هو مكان كتابه الاكواد أول شئ عايزين نجعل Label Back color لونه اصفر هنكتب التالى label1.b مجرد كتابة ليبل 1 وبعدها نقطه ( تكتب من خلال جعل لغه الكيبورد انجليزى ثم الضغط على حرف ز ) ستظهر لك قائمة عند كتابة حرف B سوف يتم فلترة القائمه طبقا للحرف المكتوب شاهد الصوره ثم نقوم باختيار BackColor Label1.BackColor = 65535 كتبنا اسم الـ Label1 وبعدها (.) ثم اسم الخاصيه ثم (=) ثم النتيجة المطلوبه 255 تشير الى جعل خلفية الـLabel لونه اصفر اليك صوره بارقام الالوان فى الفيجوال بيسك ------------------------------------------------------------------------------------------------------------------------------------------------------ ولو عايزين نعمل نص للـ Label هيكون كالتالى Label1.Caption = "بسم الله الرحمن الرحيم" لو لاحظنا جعلنا النص بين علامتى تنصيص وتكتب من خلال (shift+حرف ط ) ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- ولو حابين نحدد حجم الخط هيكون كالتالى Label1.Font = 20 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- ولوحابين نحدد سماكة الخط هيكون كالتالى بعد يساوى ستجد خيارين أما True أو False على سبيل المثال هنختار True لجعل سماكه الخط ثخين Label1.Font.Bold = True ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- ولو حابين نجعل تاثر للـLabel بشكل خاص ممكن كالتالى Label1.SpecialEffect = fmSpecialEffectRaised ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- ولو حابين نخلى النص داخل اللـLabel فى المنتصف كالتالى (تحديد محازاة النص داخل الـ Label ) Label1.TextAlign = fmTextAlignCenter ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- ولتحديد ارتفاع الـlabel كالتالى Label1.Height = 50 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- ولو حابين نحدد عرض الـ label كالتالى Label1.Width = 150 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- هذا هو الكود بشكله النهائى Private Sub UserForm_Initialize() Label1.BackColor = 65535 Label1.Caption = "بسم الله الرحمن الرحيم" Label1.Font = 20 Label1.Font.Bold = True Label1.SpecialEffect = fmSpecialEffectRaised Label1.TextAlign = fmTextAlignCenter Label1.Height = 50 Label1.Width = 150 End Sub اضغط Run أو اضغط F5 شاهد الفورم وشوف الـ label ازاى شكله ستجده كالتالى هل يوجد طريقه اخرى لكتابه الكود بشكل ابسط نعم يوجد طريقه اخرى من خلال استخدام With شاهد الكود كالتالى Private Sub UserForm_Initialize() With Label1 .BackColor = 65535 .Caption = "بسم الله الرحمن الرحيم" .Font = 20 .Font.Bold = True .SpecialEffect = fmSpecialEffectRaised .TextAlign = fmTextAlignCenter .Height = 50 .Width = 150 End With End Sub هنا استخدمنا with وطبعا لازم نقفل with ب End with ثم تكتب ( . ) وبعدها اسم الخاصيه ثم (=) جرب بنفسك وحاول اكتب الكود واى استفسار انا تحت امرك والى لقاء اخر مع درس جديد من دروس علمنى كيف اصطاد ( TextBox) انتظرونا تقبلوا تحياتى ********************************************* بسم الله الرحمن الرحيم الاخوه الكرام اليوم موعدنا بمشئية الله عن شرح TextBox كما قلنا من قبل ان TextBox هو صندوق ادخال يتم ادخال فيه نص او رقم من المستخدم اثناء العمل على الفورم أن شاء الله هيتم تناول الموضوع على اربع مراحل 1- كيفية انشاء TextBox على الفورم اثناء عملية التصميم 2- التعرف على خصائص الفورم من شاشة الخصائص اثناء عملية التصميم 3-وقت تنفيذ الكود الخاص بالـ TextBox 4-التعامل مع الـ TextBox فى لغة البرمجه 5-كيفية عمل تنسيقات للقيم المدخله نبدأ بسم الله أولا :- كيفية انشاء TextBox على الفورم اثناء عملية التصميم من صندوق التحكم أضغط على الايقونه المشار لها بحرف ِabl ثم اذهب الى الفورم وقم برسم TextBoxعلى الفورم بالابعاد اللى المناسبه لك من عرض وارتفاع شاهد الصوره التاليه توضح لك الامر فى الصوره السابقه يوجد Label1 و textBox1 هذه هى العناصر اللى موجوده على الفورم لو حابين نعمل Label و textBox ممكن يكون من خلال الطريقه السابقه وهى اضغط على العنصر المراد اضافته الى الفورم من صندوق التحكم ثم قم برسمه على الفورم وممكن من خلال الوقوف على العنصر يعنى تحديده ثم كليك يمين ستظهر قائمه اختر منها Copy دلوقتى انا عايز اعمل Label و textBox قم بتحديد Label1 واضغط على زر Ctrl من الكيبورد واستمر بالضغط عليه ثم بالماوس حدد textBox1 ثم اضغط كليك يمين بالماوس ستظهر قائمه اختر Copy ثم اذهب الى اى مكان فاضى فى الفورم واعمل كليك يمين واختر Paste او من خلال الكيبورد الضغط على زر Ctrl +زر حرف V ستجد انه تم انشاء Label2 و textBox2 وطبعا هيكون بنفس تنسيق خصائص Label1 و textBox1 شاهد الصوره --------------------------------------------------------------------------------------------------------------------------------------------- ثانياً :- التعرف على خصائص الـ TextBox من شاشة الخصائص اثناء عملية التصميم شاهد الصوره التالية لخصائص الـ TextBox هنمسك اهم الخصائص والاكثر شيوعا فى الاستخدام ونبدا نشرح بالتفصيل الخاصيه (Name) :- Name هو اسم الـ TextBox المستخدم فى الاكواد وعند انشاء اى TextBox يقوم الفيجوال بيسك بأعطاء اسم افتراضى له TextBox1 واذا قمنا بعمل TextBox ثانى فأن الفيجوال بيسك يعطى له اسم افتراضى TextBox2 وانا افضل عدم تغيير اسماء TextBox الافتراضيه التى عرفها الفيجوال بيسك فعندما نريد كتابه كود خاص بالعنصر TextBox1 فى حدث Change على سبيل المثال يكون بداية الكود كالتالى Private Sub TextBox1_Change() فأذا قمنا بتغيير اسم TextBox1 كما عرفه الفيجوال بيسك الى اسم اخر من خاصيه Name وليكن مثلا غيرناه الى (Nomber ) فهنا عند كتابة كود فى حدث Change يكون كالتالى Private Sub Nomber_Change() ففى حال تغيير الاسم وعدم التزامك بالاسم داخل محرر الاكواد وكتابة كود يحدث Error ------------------------------------------------------------------------------------------------------------------------------------------------ الخاصيه ( Back Color) هذه الخاصيه تتيح للمستخدم تغيير لون خلفية TextBox1 على اليسار يوجد سهم اضغط عليه ستظهر لك قائمة يمكنك من خلالها اختيار اللون المناسب كما يحلو لك أنظر الصوره التاليه --------------------------------------------------------------------------------------------------------------------------------------------- الخاصيه ( Control Source) وهذه الخاصيه تتيح للمستخدم تحديد خلية محدده تظهر محتواها فى TextBox1 عند عرض الفورم والعكس صحيح بمعنى ان اى ادخال فى TextBox1 يظهر مباشره فى الخليه التى قمت بكتابتها فى الخاصيه Control Source فعلى سبيل المثال لو كتبنا ان Control Source هو محتوى الخليه A1 فعند عرض الفورم ستجد ان محتوى الخليه ظاهر فى الـ TextBox1 ولو قمت بتعديل المحتوى الموجود فى TextBox1 وضغط انتر سوف يتغير مباشره فى الخليه A1 الخلاصه انه يجعل خلية محدده مربوطه بالـ TextBox1 شاهد الصوره --------------------------------------------------------------------------------------------------------------------------------------- الخاصيه ( Enabled ) هذه الخاصيه تحمل خيارين true و False عند اختيار true سوف يكون بأمكان المستخدم ادخال او تعديل محتوى TextBox1 وعند اختيار False لا يكون بأمكان المستخدم ادخال او تعديل محتوى TextBox1 شاهد الصوره عند اختيار False ---------------------------------------------------------------------------------------------------------------------------------------- الخاصيه (Font) :- وهذه الخاصيه تتيح للمستخدم التحكم فى نوع وسماكة وحجم الخط للنص داخل الـ TextBox1 الافتراضى فى الفيجوال بيسك نوع الخط هو ( Tahoma ) والسماكه هى (Regular) وحجم الخط هو ( 8) الخاصيه (Font Color) :- وهذه الخاصيه تتيح للمستخدم التحكم فى اختيار لون الخط للنص داخل الـ TextBox1 مثال عند اختيار نوع الخط (Traditional Arabic) والسماكه ( Bold ) وحجم الخط (18) شاهد الصوره ------------------------------------------------------------------------------------------------------------------------------------------ الخاصيه ( Height ) وهذه الخاصيه تتيح للمستخدم التحكم فى ارتفاع الـ TextBox1 فيمكنك أما من خلال التصميم السحب بالماوس للاسفل لتحديد الارتفاع للـ TextBox1 أو كتابة رقم للارتفاع فى الخاصيه Height ------------------------------------------------------------------------------------------------------------------------------------------ الخاصيه ( Width) هذه الخاصيه تتيح للمستخدم التحكم فى عرض الـ TextBox1 كما يمكن ايضا التحكم فى عرض الـ TextBox1 من خلال التصميم على الفورم بالماوس ------------------------------------------------------------------------------------------------------------------------------------------ الخاصيه (Left) :- وهذه الخاصيه تتيح للمستخدم التحكم فى بعد الـ TextBox1 عن الضلع الايسر للفورم الخاصيه (Top) :- وهذه الخاصيه تتيح للمستخدم التحكم فى بعد الـ TextBox1 عن الضلع الاعلى للفورم مثال لو وضعنا قيمة Left 126 *** وقيمة Top 90 ستجد الصوره التالية ----------------------------------------------------------------------------------------------------------------------------------------------- الخاصيه ( Locked ) هذه الخاصيه تحمل خيارين true و False عند اختيار False سوف يكون بأمكان المستخدم ادخال او تعديل محتوى TextBox1 وعند اختيار True لا يكون بأمكان المستخدم ادخال او تعديل محتوى TextBox1 يعنى هيكون فى حمايه على TextBox1 ---------------------------------------------------------------------------------------------------------------------------------------- الخاصيه ( Maxlenght ) هذه الخاصيه يمكن من خلالها التحكم فى عدد الاحرف او الارقام المدخله بالـ TextBox1 لو حضرتك عايز تجبر المستخدم على ادخال وليكن عدد 8 أحرف فقط اكتب فى خاصيه Maxlenght رقم 8 فلو حب المستخدم يكتب ( محمد خالد ) فأنه لا يستطيع الا كتابة (محمد خال) لماذا لانه تم تحديد عدد الادخال 8 فقط واحد هيقولى محمد خالد عددها 8 حروف هقوله ان الفيجول هيقوم بعد الفاصله اللى بين محمد وبين خالد وبالتالى (محمد 4 حروف + 1 فاصله + خال 3 حروف كدا =8) شاهد الصوره ------------------------------------------------------------------------------------------------------------------------------------------ الخاصيه ( Multiline ) هذه الخاصيه تحمل خيارين true و False عند اختيار False سوف يكون عرض المحتوى اللى بيتم ادخاله او تعديل فى محتوى TextBox1 على سطر واحد فقط وعند اختيار True سوف يكون عرض المحتوى اللى بيتم ادخاله او تعديل فى محتوى TextBox1 على عدة اسطر ويجب مراعاة تعديل ارتفاع TextBox1 ليظهر اكثر من سطر شاهد الصوره ------------------------------------------------------------------------------------------------------------------------------------------ الخاصيه ( Password char ) هذه الخاصيه يمكن من خلالها التحكم فى طريقة أظهار القيم المدخله بالـ TextBox1 لو حضرتك عايز تجعل القيم المدخله فى TextBox1 على شكل ( * ) مثلا شاهد الصوره التالية ------------------------------------------------------------------------------------------------------------------------------------------ الخاصيه ( ScrollBars ) هذه الخاصيه تحمل اربع خيارات ويبدأ العدد من 0 الى 3 0- FMScrollBarsNone ( هذا يعنى الغاء خاصيه ScrollBars ) 1-FMScrollBarsHorizontal ( هذا يعنى عمل ScrollBars للـ TextBox1 بشكل أوفقى ) 2-FMScrollBarsVertical ( هذا يعنى عمل ScrollBars للـ TextBox1 بشكل رأسى ) 3-FMScrollBarsBoth ( هذا يعنى عمل ScrollBars للـ TextBox1 بشكل أفقى و رأسى مع بعض ) *** الاختيار رقم 1 وهو عمل ScrollBars للـ TextBox1 بشكل أوفقى لابد من جعل خاصيه Multiline تكون False يعنى يكون الكتابه على سطر واحد وبكدا يعمل سكرول بار افقى للوصول الى اخر السطر **** الاختيار رقم 2 وهو عمل ScrollBars للـ TextBox1 بشكل رأسى لابد من جعل خاصيه Multiline تكون True يعنى يكون الكتابه على عدة أسطر وبكدا يعمل سكرول بار رأسى للوصول الى اخر السطر **** الاختيار رقم 3 وهو عمل ScrollBars للـ TextBox1 بشكل رأسى واخر افقى بصراحه حاولت استخدمه لكن لم يظهر معى بشكل افقى وراسى وتفسير ذالك هى الخاصيه Multiline لانها تحمل خيارين اما الادخال يكون على سطر واحد وبالتالى فان الاسكرول بار الرأسى لا يوجد له فائده وأما الادخال على عدة اسطر متتاليه وبالتالى ان الاسكرول بار الافقى لي له فائده هذا والله اعلم ( مش عايز افتى فى شئ لا اعلمه واترك الامر للخبراء ) شاهد الصوره -------------------------------------------------------------------------------------------------------------------------- الخاصيه (Visible ) وهذه الخاصيه تتيح للمستخدم التحكم فى ظهور او عدم ظهور TextBox1 عند عرض الفورم وعند الضغط على السهم المجاور لها ستجد لها خيارين True و False عندد اختيار True سوف يظهر الـ TextBox1 على الفورم عند فتحه ( وهذا هو الخيار الافتراضى من الفيجوال بيسك ) وعند اختيار False ٍسوف يختفى الـ TextBox1 على الفورم عند فتحه يعنى هيكون غير ظاهر ومخفى لا يراه المستخدم -------------------------------------------------------------------------------------------------------------------------- الخاصيه (Tab index ) وهذه الخاصيه تتيح للمستخدم ترتيب التنقل بين الازرار على الفورم بعد الخروج منها من خلال الزر انتر ويمكن تعطيل هذه الخاصيه من خلال استخدام الخاصيه Tab stop = True الخاصيه (Tab Stop ) وهذه الخاصيه تحمل خيارين True و False عندد اختيار True يتم تعطيل خاصيه Tab index وعند اختيار False ٍسوف تفعل خاصيه Tab index للتنقل بين الازرار حسب الترتيب الذى ترغب فيه ------------------------------------------------------------------------------------------------ الخاصيه (Text Align) :- وهذه الخاصيه تتيح للمستخدم التحكم فى اتجاه بداية النص داخل الـ TextBox1 هل يكون يميناً أو يساراً أو وسط TextBox1 لو ذهبت للخصائص وعند الخاصيه Text Align ستجد سهم اضغط عليه ستجد 3 خيارات امامك وهى fm Text Align Left -1 عند الاختيار ستجد ان اتجاه النص داخل TextBox1 يبداء من اليسار fm Text Align Center -2 عند الاختيار ستجد ان اتجاه النص داخل TextBox1 فى المنتصف fm Text Align Right -3 عند الاختيار ستجد ان اتجاه النص داخل TextBox1 يبداء من اليمين ------------------------------------------------------------------------------------------------------------------------- رقم 20 الخاصيه ( ٍِSpecial Effect ) هذه الخاصيه من الخصائص الهامه للـ TextBox1 وهى تعطى اشكال مبهره ومميزه للـ TextBox1 ولها خمس اشكال شاهد الصوره التاليه كما تشاهدون فى الصوره على اليسار دائره حمرا وبداخلها سهم يمكنك الضغط على السهم سيظهر لك قائمة الخيارات للاشكال اخترمنها الشكل المناسب لك جرب كل الاشكال واطلع علىها واختر ما يناسب زوقك ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- كدا الحمد لله انتهينا من المحور الاول وهو عملية التصميم ورسم TextBox وايضا انتهينا من المحور الثانى وهو اهم خصائص الـ TextBox ان شاء الله المره القادمه نتكلم عن المحور الثالث وهو وقت تنفيذ الكود الخاص بـ TextBox ارجوا من الله ان اكون وفقت بالشرح واى استفسار انا تحت امر الجميع تقبلوا تحياتى ********************************************* ثالثاُ:- وقت تنفيذ الكود الخاص بالـ TextBox قبل أن نتحدث عن وقت تنفيذ الكود لازم نعرف أولا أزاى بيكون كتابة ألاعلان عن الكود للـ TextBox Private Sub TextBox1_Change() هنا يتم كتابة الكود المراد تنفيذه End Sub السطر الاول هو بداية الاعلان عن الكود فنقوم بكتابة Private Sub ستجد لونها بالكود أزرق ( وهو بداية لاى كود خاص لأى عنصر تحكم داخل الفورم ) ثم نقوم بكتابة اسم العنصر المراد عمل الكود له وهو بمثالنا TextBox1 ثم نقوم بكتابة _ ( تكتب من خلال الضغط على Shift+زر الطرح الموجود بالاعلى بجوار زر + ) ثم نقوم بكتابة وقت تنفيذ الكود (اللى هو موضوعنا اليوم) ثم كتابة () قوسين بهذا الشكل وبمجرد الضغط انتر ستجد الكود عمل سطر تانى فيه End sub يوجد طريقه اخرى وهى اتبع الصوره التالية توضح لك قم بالضغط على اى مكان فاضى بالفورم وادخل لمحرر الاكواد الخاص بالفورم دلوقتى هنتكلم عن أهم طرق وقت تنفيذ الكود واكثرها شيوعا فى الاستخدام 1- Afterupdate :- هنا يتم تنفيذ الكود بمجرد الانتهاء من الادخال فى TextBox1 والانتقال الى اى عنصر اخر ( وهو يشبه كثير طريقة Exit) 2-EXit :- هنا يتم تنفيذ الكود بمجرد الخروج من TextBox1 والانتقال الى اى عنصر اخر ( يشبه كثير طريقه Afterupdate ) 3-Change :- هنا يتم تنفيذ الكود عند حدوث اى تغيير فى TextBox1 4-DblClick :- هنا يتم تنفيذ الكود عند الضغط دبل كليك بالماوس داخل TextBox1 5-Enter :- هنا يتم تنفيذ الكود بمجرد وضع مؤشر الماوس داخل صندوق TextBox1 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- كدا الحمد لله انتهينا من المحور الثالث وقت تنفيذ الكود الخاص بالـ TextBox ان شاء الله المره القادمه نتكلم عن المحور الرابع وهو التعامل مع TextBox فى لغة البرمجه ارجوا من الله ان اكون وفقت بالشرح واى استفسار انا تحت امر الجميع تقبلوا تحياتى رابعاً:- التعامل مع خصائص الـ TextBox فى لغة البرمجه فى الدرس قبل السابق عرفنا ازاى نتحكم فى خصائص الفورم من شاشة الخصائص اثناء عملية التصميم فماذا لو حبينا نتحكم فى خصائص الفورم ولكن من خلال الاكواد وليس من شاشة الخصائص فى مرحله التصميم هنبدأ على طول بمثال عملى ونشرح عليه اضغط دبل كليك على اى مكان فاضى فى الفورم وهندخل محرر اكواد الفورم ونعمل كود فى حدث فتح الفورم اتبع الصوره فى المكان المظلل باللون الاحمر هنا موضوع كتابه الاكواد 1-خاصيه BackColor :- الرقم 15849925 لجعل خلفية التكست بوكس لونها سماوى فاتح ( راجع ارقام الالوان فى الدروس الخاصه بالـ Label ) TextBox1.BackColor = 15849925 **************************************************************************************************************************************** 2-خاصيه Enabled :- TextBox1.Enabled = True أو TextBox1.Enabled = False هذه الخاصيه تحمل خيارين true و False عند اختيار False سوف يكون بأمكان المستخدم ادخال او تعديل محتوى TextBox1 وعند اختيار True لا يكون بأمكان المستخدم ادخال او تعديل محتوى TextBox1 يعنى هيكون فى حمايه على TextBox1 *************************************************************************************************************************** 3-خاصيه Height :- للتحكم بارتفاع التكست بوكس وليكن جعل الارتفاع 35 TextBox1.Height = 35 ************************************************************************************************************************************ 4-خاصيه Left :- للتحكم فى بعد التكست بوكس عن الضلع الايسر للفورم وليكن جعل البعد 80 TextBox1.Left = 80 ********************************************************************************************************************************************* 5-خاصيه Locked :- هذه الخاصيه تحمل خيارين true و False TextBox1.Locked = False أو TextBox1.Locked = True عند اختيار False سوف يكون بأمكان المستخدم ادخال او تعديل محتوى TextBox1 وعند اختيار True لا يكون بأمكان المستخدم ادخال او تعديل محتوى TextBox1 يعنى هيكون فى حمايه على TextBox1 *********************************************************************************************************************** 6-خاصيه MaXLength :- هذه الخاصيه يمكن من خلالها التحكم فى عدد الاحرف او الارقام المدخله بالـ TextBox1 لو حضرتك عايز تجبر المستخدم على ادخال وليكن عدد 8 أحرف فقط اكتب فى خاصيه Maxlenght رقم 8 فلو حب المستخدم يكتب ( محمد خالد ) فأنه لا يستطيع الا كتابة (محمد خال) لماذا لانه تم تحديد عدد الادخال 8 فقط واحد هيقولى محمد خالد عددها 8 حروف هقوله ان الفيجول هيقوم بعد الفاصله اللى بين محمد وبين خالد وبالتالى (محمد 4 حروف + 1 فاصله + خال 3 حروف كدا =8) TextBox1.MaxLength = 8 **************************************************************************************************************************** 7-خاصيه Multline :- هذه الخاصيه تحمل خيارين true و False عند اختيار False سوف يكون عرض المحتوى اللى بيتم ادخاله او تعديل فى محتوى TextBox1 على سطر واحد فقط وعند اختيار True سوف يكون عرض المحتوى اللى بيتم ادخاله او تعديل فى محتوى TextBox1 على عدة اسطر ويجب مراعاة تعديل ارتفاع TextBox1 ليظهر اكثر من سطر TextBox1.MultiLine = False أو TextBox1.MultiLine = True ******************************************************************************************************** 8-خاصيه Passwordchar :- هذه الخاصيه يمكن من خلالها التحكم فى طريقة أظهار القيم المدخله بالـ TextBox1 لو حضرتك عايز تجعل القيم المدخله فى TextBox1 على شكل ( * ) مثلا شاهد الصوره التالية نلاحظ بالكود تم كتابة العلامه * بين اقواس تنصيص " * " ( وهى تكتب من خلال shift+حرف ط ) TextBox1.PasswordChar = "*" **************************************************************************************************************************** 9-خاصيه ScorollBars :- هذه الخاصيه تحمل اربع خيارات ويبدأ العدد من 0 الى 3 0- FMScrollBarsNone ( هذا يعنى الغاء خاصيه ScrollBars ) شاهد الكود التالى -- بمجرد كتابة = ستجد قائمة تظهر لك بالاربع خيارات TextBox1.ScrollBars = fmScrollBarsNone 1-FMScrollBarsHorizontal ( هذا يعنى عمل ScrollBars للـ TextBox1 بشكل أوفقى ) TextBox1.ScrollBars = fmScrollBarsHorizontal 2-FMScrollBarsVertical ( هذا يعنى عمل ScrollBars للـ TextBox1 بشكل رأسى ) TextBox1.ScrollBars = fmScrollBarsVertical 3-FMScrollBarsBoth ( هذا يعنى عمل ScrollBars للـ TextBox1 بشكل أفقى و رأسى مع بعض ) TextBox1.ScrollBars = fmScrollBarsBoth *********************************************************************************************************************** 10-خاصيه Visible :- وهذه الخاصيه تتيح للمستخدم التحكم فى ظهور او عدم ظهور TextBox1 عند عرض الفورم عندد اختيار True سوف يظهر الـ TextBox1 على الفورم عند فتحه ( وهذا هو الخيار الافتراضى من الفيجوال بيسك ) TextBox1.Visible = True وعند اختيار False ٍسوف يختفى الـ TextBox1 على الفورم عند فتحه يعنى هيكون غير ظاهر ومخفى لا يراه المستخدم TextBox1.Visible = False *********************************************************************************************************************** 11-خاصيه Top :- وهذه الخاصيه تتيح للمستخدم التحكم فى بعد الـ TextBox1 عن الضلع الاعلى للفورم TextBox1.Top = 90 ************************************************************************************************************************************ 12-خاصيه Width :- هذه الخاصيه تتيح للمستخدم التحكم فى عرض الـ TextBox1 لو فرضنا نريد جعل العرض 100 TextBox1.Width = 100 ******************************************************************************************************************************** 13-خاصيه Text Align :- وهذه الخاصيه تتيح للمستخدم التحكم فى اتجاه بداية النص داخل الـ TextBox1 هل يكون يميناً أو يساراً أو وسط TextBox1 بمجرد كتابة = ستجد الفيجوال بيسك يعرض لك قائمة بها 3 خيارات fm Text Align Left -1 عند الاختيار ستجد ان اتجاه النص داخل TextBox1 يبداء من اليسار TextBox1.TextAlign = fmTextAlignLeft fm Text Align Center -2 عند الاختيار ستجد ان اتجاه النص داخل TextBox1 فى المنتصف TextBox1.TextAlign = fmTextAlignCenter fm Text Align Right -3 عند الاختيار ستجد ان اتجاه النص داخل TextBox1 يبداء من اليمين TextBox1.TextAlign = fmTextAlignRight **************************************************************************************************************************** 14-خاصيه Special Effect :- هذه الخاصيه من الخصائص الهامه للـ TextBox1 وهى تعطى اشكال مبهره ومميزه للـ TextBox1 ولها خمس اشكال بمجرد كتابة = ستجد الفيجوال بيسك يعرض لك قائمه بها 5 خيارات على سبيل المثال منها TextBox1.SpecialEffect = fmSpecialEffectBump جرب كل الخيارات واختار منها ما يناسب زوقك ************************************************************************************************************************************** الكود بشكله النهائى هيكون كدا Private Sub UserForm_Initialize() TextBox1.BackColor = 15849925 TextBox1.Enabled = True TextBox1.Height = 35 TextBox1.Left = 80 TextBox1.Locked = False TextBox1.MaxLength = 8 TextBox1.MultiLine = True TextBox1.PasswordChar = "*" TextBox1.ScrollBars = fmScrollBarsBoth TextBox1.Visible = True TextBox1.Top = 90 TextBox1.Width = 100 TextBox1.TextAlign = fmTextAlignRight TextBox1.SpecialEffect = fmSpecialEffectBump End Sub *************************************************************************************************************** كدا الحمد لله انتهينا من المحور الرابع وهو التعامل مه خصائص ال TextBox فى لغة البرمجه ان شاء الله المره القادمه نتكلم عن المحور الخامس والاخير وهو كيفية عمل تنسيقات للقيم المدخله بـ TextBox ارجوا من الله ان اكون وفقت بالشرح واى استفسار انا تحت امر الجميع تقبلوا تحياتى
    1 point
  14. العروسة لو عرفت هيجيلها اكتئاب .. شكلها كدا هنلغي البط ونطلب كباب .. بالتوفيق يا أحباب
    1 point
  15. أنا على أتم استعداد وعمال نزغط فى البط استعدادا للعزومة
    1 point
  16. كيف و أنا اتتبع خطاكم و أسطركم الذهبية فى الردود على الأعضاء حيا الله جميع رواد المنتدى و بارك فى علمكم
    1 point
  17. أخى الحبيب ياسر والله مشغول جدا هذه الأيام ولكن أحاول قدر الامكان التواجد ولكن ضيق الوقت لا يسمح لى بالتواجد المستمر ان شاء فترة بسيطة والأمور تتحسن وأعوض الغياب باذن الله جزاك الله كل خير على سؤالك الطيب تقبل أرق تحياتى وتقديرى
    1 point
  18. أخي الكريم الذول السطر الأول عبارة عن بداية الحلقة التكرارية للصفوف من 8 إلى 32 والعداد المستخدم هو المتغير ii السطر الثاني اختبار ما إذا كانت الخلية في العمود الثالث فارغة يتم إخفاء الصف في السطر التالي له ثم إغلاق جملة الشرط والسطر الأخير الانتقال للخلية التالية في الحلقة التكرارية تقبل تحياتي
    1 point
  19. الله لا يحرمنا منكم عز الله انكم كفوا جميع بيض الله وجيهكم لا خلا ولا عدم تسلمون
    1 point
  20. عذرا على التأخير شكرا و بارك الله فيك
    1 point
  21. السلام عليكم الاستاذ الفاضل / خالد الله يجازيك كل خير ويجعله في ميزان حسناتك شكرا علي هذا الكود الطباعة ولكن الكود بيعمل معاينة علي اللجنة الحالية انا عاوز كود طباعة بيعمل معاينة علي كل اللجان ويقوم بطباعة اللجان كلها وليس لجنة واحدة بالنسبة لزر التحكم انا عاوز اللجان تتغير من خلال الاسهم بالزيادة او النقصان ابغي شرح لجزئية في كود الطباعة اعتقد في متغيرات عاوز افهمها بحيث اقدر اطبقها علي ورقة عمل اخري For i = 8 To 32 If Cells(i, 3).Value = "" Then Cells(i, 3).EntireRow.Hidden = True End If Next i
    1 point
  22. وبارك الله فيك جمل SQL هي استعلام بالأصل لم اجرب الاستعلام استخدمت الكود .. وبالتوفيق
    1 point
  23. تم حل المشكلة تبين ان اللغة هي المشكلة شكرا لك عزيزي
    1 point
  24. سعيد صواب احسنت اخي بارك الله فيك لقد ابدعت .. اذن لا توجد هناك طريقة حذف من خلال الاستعلام صحيح ؟؟ فقط (الكود البرمجي) هو من يقوم بحل المشكلة أليس كذلك ؟
    1 point
  25. حياك الله اخي الكريم ضع هذا السطر في حدث عند النقر لزر أمر DoCmd.RunSQL "DELETE T1.* FROM T1 WHERE fname NOT IN ( SELECT fname FROM t2)" بالتوفيق
    1 point
  26. وعليكم السلام أخوي جعفر وين هالغيبة تفضل: Private Sub Form_Current() MyTime = Now() Me.pic.Visible = True Me.نص7.Visible = True Me.نص11.Visible = True End Sub Private Sub t_Change() Dim i As String i = Len(Me.t.Text) If i >= 4 Then DoCmd.Requery Dim db As DAO.Database, rs As DAO.Recordset Set db = CurrentDb Set rs = db.OpenRecordset("t2") rs.AddNew rs("an") = Me.an rs("adate") = Date rs("intime") = Me.LabelDate rs.Update rs.Close t = "" t.SetFocus PauseTime = 20 ' Set duration. Start = Timer ' Set start time. Do While Timer < Start + PauseTime DoEvents ' Yield to other processes. Loop Me.pic.Visible = False Me.نص7.Visible = False Me.نص11.Visible = False End If End Sub تقدر تلعب بسطر التأخير ،بالثوان: PauseTime = 20 جعفر 304.abc.mdb.zip
    1 point
  27. استاذى الحبيب ومعلمى الجليل شكر الله لك متابعتكم الطيبة وكرمكم الذى لا حدود له اسأل الله تعالى لك البركة فى العمر والعلم والعمل وان يجعل كل سبيل علم تمهدوه لنا ان يكن سيل دخولكم الجنة فى اعلى درجاتها مع النبين والصديقين والشهداء ان شاء الله جزاكم الله عنى وعن امة محمد كل الخير ان شاء الله سأجرب نفسى فى تطبيق ما اهديتمونى وأوافيكم يالنتيجة ان شاء الله فى اقرب وقت دمتم على طاعة الله
    1 point
  28. الصنف الي واخذه الاخ احمد الفلاحي مضروب ،، اجيب لكم الفكرة الثانية ،، لييش ما يكون موقع عربي مفتوح للجميع بدل ماهو برنامج تسطيب ،، ويكون نفس فكرة الاخ عبد العزيز البسكري ، وتستطيع الاضافة مجلدات زيادة بحيث الواحد لو جاء يبحث يبحث في القسم الذي يريدة ،، بكل بساطة ،، ،، احنا كرماء ،، وخلي الغرب تاخذ منا ،، اصلاهم اخذوا منا كل حاجة ، وقفت على الاكواد فقط ،
    1 point
  29. بارك الله فيك أخي خالد الرشيدي قمت بتجربة الدالة وأعطتني نفس الناتج رغم أنني لم أعرف كيفية استخدام الشروط بالنسبة للدالة sumifs وذلك بسبب أنني لست إلا مبتدأ وحاولت إيجاد حل لهذا الجدول أفيدونا أفادكم الله وبارك الله فيك
    1 point
  30. بسم الله الرحمن الرحيم السلام عليكم ورحمة الله وبركاته صباح النور إليك المرفق عسى يلبي احتياجاتك علماً بأن هذه أول مشاركة لي المنتدى عسى الله أن ييسر لي ما بعدها والسلام عليكم الجدول3.rar
    1 point
  31. حتى تكون النتائج صحيحة لابد ان تكون المعادله هكذا اذا اردت ان ترجع النتائج بشكل افقى وليس راسى =SUM(--(IFERROR(WEEKDAY(IF((ROW(1:50000)>=$B$3)*(ROW(1:50000)<=$B$4);ROW(1:50000);"");16);"")=COLUMN(A$1)))
    1 point
  32. تفضل Private Sub أمر13_Click() Me.b1 = DSum("[wared]", "malyah", "[sdate] between #" & Me.sdate & "# and #" & Me.fdate & "#") Me.b2 = DSum("[tamoel]", "malyah", "[sdate1] between #" & Me.sdate & "# and #" & Me.fdate & "#") Me.b3 = DSum("[masrof]", "malyah", "[sdate2] between #" & Me.sdate & "# and #" & Me.fdate & "#") End Sub جعفر
    1 point
  33. بس انا عاندى فكره افضل من البرنامج ده ومن البرنامج اللى اخى ياسؤ اقترحه نشتريه تحبو اقول فكرتى ولا اسكت ونكتفى بذلك اخوانى الكرام وجزاكم الله كل خير
    1 point
  34. أخي الحبيب أحمد أخي الغالي ياسر العربي أقولكم ع الصراحة ..أنا كنت عايز أطلع المكتبات اللي عندكم بس بأسلوب استفزازي .. عشان كدا طرحت الموضوع لأني عارف إن محدش في الوطن العربي بيشتري ..!!ههههههههه (مش إحنا اللي ينضحك علينا ) بس ايه المانع إننا نشترك كل واحد يدفع ربع جنيه ونشتري البرنامج ونوزعه ع الغلابة والكل يستفيد .. فكرة مش كدا (يلا يا عربي لم الفلوس بس اوعى تطمع فيها وتهرب برا مصر) تقبلوا وافر تقديري واحترامي
    1 point
  35. الطريقه الرابعه :- استخدام لغة البرمجه هى بنظرى من اهم الطرق واسهلها وهى تكون من خلال البرمجه فقط ولا يمكن تنفيذها من شاشة الخصائص فى مرحله التصميم شاهد الصوره التالية هتعرف ما هى الطريقه الكود هو بشكل مكبر عباره عن سطر واحد فقط ComboBox1.RowSource = "sheet1!a2:b" & Sheet1.Cells(Rows.Count, "a").End(xlUp).Row تعالو نفصص كل كلمة فى هذا السطر ونعرف ازاى نكتبه comboBox هو اسم الكمبوبوكس المراد تعبئته بالبيانات . تكتب من خلال جعل الكيبورد انجلش ثم نضغط على حرف ز بالعربى RowSource هى الخاصيه المسئوله عن تعبئة الكمبوبوكس بالبيانات = نكتب علامه = " نفتح قوس تنصيص " ويكتب من خلال شفت+حرف ط بالعربى Sheet1!a2 وهى اول خلية بالجدول المراد عرض بياناته فى الكمبوبوكس (ونلاحظ اننا كتبنا اسم الشيت متبوع بعلامة تعجب ! ثم اسم الخلية) : تعنى الى b اسم اخر عمود بالجدول " قفل قوس التنصيص طالما فتحنا قوس اذن لازم نقفله & علامة و أو بمعنى and Sheet1.Cells(Rows.Count, "a").End(xlUp).Row اخر خليه بها بيانات بالعمود A طيب عرفنا ازاى نكتب الكود فما هو وقت تنفيذ الكود السطر ده هيتم وضعه فى اى حدث ( والله دى بقى حضرتك اللى تحددها حسب برنامجك انت ولكن على سبيل المثال نضع هذا الكود فى حدث فتح الفورم شاهد الكود Private Sub UserForm_Initialize() ComboBox1.RowSource = "sheet1!a2:b" & Sheet1.Cells(Rows.Count, "a").End(xlUp).Row End Sub فعند فتح الفورم وتهيئته يتم تعبئة الكمبوبوكس بالبيانات ممكن نكتبه بشكل تانى لو حابب تعرف اكتر من طريقه شوف الكود وبعدين اشرحه لك Private Sub UserForm_Initialize() Lr = Sheet1.Cells(Rows.Count, "a").End(xlUp).Row ComboBox1.RowSource = "sheet1!a2:b" & Lr End Sub قمت بعمل متغير وسميته Lr وممكن تسميها انت بأى اسم كما تحب وقلت ان المتغير ده عباره عن اخر خلية بها بيانات بالعمود A وبالتالى كتبة المصدر بتاع البيانات كالتالى sheet1!a2:b" & Lr" تم الاستعاضه بـ Lr بدلا من السطره ده Sheet1.Cells(Rows.Count, "a").End(xlUp).Row ويمكن كتابة الكود بشكل اخر ( ملحوظه هذا التنوع بالكتابه هو فقط من حيث اسلوب كتابة الكود لكن المضمون واحد) Private Sub UserForm_Initialize() With ComboBox1 .RowSource = "sheet1!a2:b" & Sheet1.Cells(Rows.Count, "a").End(xlUp).Row End With End Sub الى هنا انتهى درس اليوم اعتقد انه بسيط وممتع يارب اكون وفقت بالشرح وتستفيدو منه عايز اشوف تجاربكم على الدرس على رابط الردود الخاص بالموضوع اتمنى لكم التوفيق وانتظرونا فى طريقه جديده قريبا بأذن الله
    1 point
  36. رابعاً:- التعامل مع خصائص الـ ComboBox فى لغة البرمجه فى الدرس قبل السابق عرفنا ازاى نتحكم فى خصائص ComboBox من شاشة الخصائص اثناء عملية التصميم فماذا لو حبينا نتحكم فى خصائص ComboBox ولكن من خلال الاكواد وليس من شاشة الخصائص فى مرحله التصميم هنبدأ على طول بمثال عملى ونشرح عليه اضغط دبل كليك على اى مكان فاضى فى الفورم وهندخل محرر اكواد الفورم ونعمل كود فى حدث فتح الفورم اتبع الصوره هتلاقى الصوره دى فى المكان المظلل باللون الاحمر هنا موضوع كتابه الاكواد ولكتابة اى كود خاص بأى عنصر تحكم فى الفورم يكون على الشكل التالى الخاصيه ( Back Color):- زى ما قلنا قبل كدا ان هذه الخاصيه تتيح للمستخدم تغيير لون خلفية للـ ComboBox عايزين نكتب فى المربع الاحمر كود يجعل لون خلفية الكمبوبوكس (سماوى ) عند فتح الفورم لو حضرتك محترف كتابة انجلش كويس على الكيبورد وسريع خلاص لا تهتم بالقائمة المساعده للخصائص اللى بيعرضها الفيجوال بيسك واكتب انت بنفس سطر الكود ناخد مثال اخر عن الخاصيه ( Back Style):- ناخد مثال اخر عن الخاصيه ( Row Source ):- ComboBox1.RowSource = "A1: b5" سطر الكود زى ما هو ظاهر تم كتابة اسم العنصر ثم . ثم اسم الخاصيه ثم = ثم المدى المراد اظهاره فى الكمبوبوكس ( المدى تم كتابته بين اقواس تنصيص " المدى " وهذه الاقواس كما قلنا انها تكتب من خلال الضغط على شيفت + حرف ط بالعربى ) ناخد مثال اخر عن الخاصيه ( Column Heads ):- ComboBox1.ColumnHeads = True سطر الكود زى ما هو ظاهر تم كتابة اسم العنصر ثم . ثم اسم الخاصيه ثم = ثم نوع الخاصيه اما True أو false وكذالك لباقى الخصائص الخاصه باى عنصر تحكم على الفورم هذا هو الكود بشكله النهائى على الاربع خصائص السابقه Private Sub UserForm_Initialize() ComboBox1.BackColor = 15849925 ComboBox1.BackStyle = fmBackStyleOpaque ComboBox1.RowSource = "A1: b5" ComboBox1.ColumnHeads = True End Sub هل يمكن ايضا كتابة الكود بشكل ابسط نعم يوجد طريقه اخرى من خلال استخدام With وطبعا لازم نقفل With بـ End with ويكون بداية سطر الكود هو . ثم اسم الخاصيه ثم = ثم نوع أو قيمة النتيجة شاهد الكود كالتالى Private Sub UserForm_Initialize() With ComboBox1 .BackColor = 15849925 .BackStyle = fmBackStyleOpaque .RowSource = "A1: b5" .ColumnHeads = True End With End Sub أنا عايزك تجرب باقى الخصائص بنفسك ولو صدفك اى مشكله لا تتردد انك تراسلنى تابعونا
    1 point
  37. ثالثا :- وقت تنفيذ الكود الخاص بــ ComboBox دلوقتى هنتكلم عن أهم طرق وقت تنفيذ الكود واكثرها شيوعا فى الاستخدام 1- Afterupdate :- هنا يتم تنفيذ الكود بمجرد الانتهاء من الادخال فى ComboBox والانتقال الى اى عنصر اخر ( وهو يشبه كثير طريقة Exit) 2-EXit :- هنا يتم تنفيذ الكود بمجرد الخروج من ComboBox والانتقال الى اى عنصر اخر ( يشبه كثير طريقه Afterupdate ) 3-Change :- هنا يتم تنفيذ الكود عند حدوث اى تغيير فى ComboBox 4-DblClick :- هنا يتم تنفيذ الكود عند الضغط دبل كليك بالماوس داخل ComboBox 5-Enter :- هنا يتم تنفيذ الكود بمجرد وضع مؤشر الماوس داخل صندوق ComboBox دلوقتى هنعرف ازاى بيكون كتابه الاعلان على الاكواد الخاصه بالـ ComboBox ( وهى نفس الطريقه لكل عناصر التحكم فى الفورم ) مثال على حدث Afterupdate Private Sub ComboBox1_AfterUpdate() 'هنا بيتم كتابه الكود المراد تنفيذه End Sub السطر الاول هو بداية الاعلان عن الكود فنقوم بكتابة Private Sub ستجد لونها بالكود أزرق ( وهو بداية لاى كود خاص لأى عنصر تحكم داخل الفورم ) ثم نقوم بكتابة اسم العنصر المراد عمل الكود له وهو بمثالنا ComboBox ثم نقوم بكتابة _ ( تكتب من خلال الضغط على Shift+زر الطرح الموجود بالاعلى بجوار زر + ) ثم نقوم بكتابة وقت تنفيذ الكود (اللى هو موضوعنا اليوم) ثم كتابة () قوسين بهذا الشكل وبمجرد الضغط انتر ستجد الكود عمل سطر تانى فيه End sub يوجد طريقه اخرى وهى اتبع الصوره التالية توضح لك قم بالضغط على اى مكان فاضى بالفورم وادخل لمحرر الاكواد الخاص بالفورم
    1 point
  38. 23- الخاصيه ( ShowDrop Button When ):- وهذه الخاصيه تتيح للمستخدم التحكم فى ظهور او عدم ظهورعلامة الـ ComboBox عند عرض الفورم شاهد الصورة توضح لك الامر ************************************************************************************************************* 24- الخاصيه ( Style ):- وهى بنظرى من اهم الخصائص للكمبوبوكس زى ما احنا عارفين لفتح القائمة الخاصه بالكمبوبوكس للاختيار منها لابد من الضغط على السهم لتفتح القائمه ولكن هذه الخاصيه تتيح للمستخدم التحكم فى وقت فتح القائمة الخاصه بالكمبوبوكس فلها خيارين الخيار الاول Fm StyleDropDown Combo - 0 :- هو الافتراضى لابد من الضغظ على السهم لفتح القائمة كما تتيح للمستخدم كتابة اى شئ بالكمبوبوكس غير موجود بالقائمه بمعنى لا تلزم المستخدم من الخيار من القائمة والخيار الثانى Fm StyleDropDown List - 2 : -هو فتح القائمة من خلال الضغط على السهم او بمجرد وقوف مؤشر الماوس على الكمبوبوكس وكمان ميزة ثالته وهى مهمه جدا هو انه لا يمكن للمستخدم كتابة اى شئ فى الكمبوبوكس يعنى كانك عامل خاصيه حمايه للكمبوبوكس ولا سبيل امام المستخدم الا من الاختيار من القائمه ******************************************************************************* 25-الخاصيه (Text Align) :- وهذه الخاصيه تتيح للمستخدم التحكم فى اتجاه النص ( المحازاه للنص )داخل الـكمبوبوكس هل يكون يميناً أو يساراً أو وسط الـكمبوبوكس لو ذهبت للخصائص وعند الخاصيه Text Align ستجد سهم اضغط عليه ستجد 3 خيارات امامك وهى fm Text Align Left -1 عند الاختيار ستجد ان اتجاه النص داخل ComboBox يبداء من اليسار fm Text Align Center -2 عند الاختيار ستجد ان اتجاه النص داخل ComboBox فى المنتصف fm Text Align Right -3 عند الاختيار ستجد ان اتجاه النص داخل ComboBox يبداء من اليمين ******************************************************************************************** 26-الخاصيه (Tab index ) وهذه الخاصيه تتيح للمستخدم ترتيب التنقل بين الازرار على الفورم بعد الخروج منها من خلال الزر انتر ويمكن تعطيل هذه الخاصيه من خلال استخدام الخاصيه Tab stop = True هحاول اشرحها بشكل مبسط بفرض عندك فورم أنشئت فيه 3 عناصر ( Combobox1 - Textbox2 - Textbox1 )على نفس الترتيب فأن الفيجوال بيسك بشكل افتراضى يقوم بترتيب التنقل بينهم حسب ترتيب أنشائهم فعند تشغيل الفورم وانت واقف فى Textbox1 وضغط انتر سينتقل مؤشر الماوس الى Textbox2 ثم ضغط انتر سينتقل مؤشر الماوس الى Combobox1 فلو نا عايز وانا واقف فى Textbox1 واضغط انتر ينتقل الى Combobox1 وليس Textbox2 هنا تاتى اهميه الخاصيه Tab index اذهب لشاشة تصميم الفورم فى الفيجوال وحدد Textbox2 وفى الخاصيه Tab index اكتب رقم 4 ثم حدد Combobox1 ومن الخاصيه Tab index له اكتب رقم 2 ثم ارجع وحدد Textbox2 وفى الخاصيه Tab index اكتب رقم 3 بدلا من 4 وبكدا عند تشغيل الفورم والوقوف فى Textbox1 والضغط انتر سينتقل مؤشر الماوس الى Combobox1 وليس Textbox2 ارجوا ان تكون وضحت الفكره 27-الخاصيه (Tab Stop ) وهذه الخاصيه تحمل خيارين True و False عندد اختيار True يتم تعطيل خاصيه Tab index وعند اختيار False ٍسوف تفعل خاصيه Tab index للتنقل بين الازرار حسب الترتيب الذى ترغب فيه ******************************************************************************************** 28- الخاصيه ( ٍِSpecial Effect ) هذه الخاصيه من الخصائص الهامه للـ Combobox وهى تعطى اشكال مبهره ومميزه للـ Combobox ولها خمس اشكال اختر منها ما يناسب ذوقك شاهد الصوره التاليه **************************************************************************
    1 point
  39. بسم الله الرحمن الرحيم الاخوه الكرام اليوم بمشيئة الله سنتكلم عن شروحات الكمبوبوكس ( ComboBox) كما قلنا من قبل ان ComboBox هو عباره عن وعاء يتم تعبئته ببيانات محدده لتظهر للمستخدم ليختار منها اثناء العمل على الفورم أن شاء الله هيتم تناول الموضوع على خمس مراحل 1- كيفية انشاء ComboBox على الفورم اثناء عملية التصميم 2- التعرف على خصائص ComboBox من شاشة الخصائص اثناء عملية التصميم 3-وقت تنفيذ الكود الخاص بالـ ComboBox 4-التعامل مع الـ ComboBox فى لغة البرمجه 5-معرفة مهارات تعبئة وتغذية ComboBox باكثر من طريقه التقليديه والاحترافيه منها 6-كيفية اجبار المستخدم على الاختيار من الـ ComboBox نبدأ بسم الله أولا :- كيفية انشاء ComboBox على الفورم اثناء عملية التصميم لأضافه كمبوبوكس جديد على الفورم يوجد طريقتين الطريقه الاولى الطريقه الثانية هذه الطريقه يتم من خلالها نسخ اى عنصر او اكثر من العناصر على الفورم ولصقها لعمل عناصر جديده وسوف يكون لها نفس الخصائص للعناصر الذى تم اخذ النسخ منها وفيما يعد يمكنك تغيير الخصائص للعناصر الجديد كما يحلو لك ******************************************************************************************** ثانيا:- التعرف على خصائص ComboBox من شاشة الخصائص اثناء عملية التصميم فى الصورة قبل السابقه على اليسار يوجد خصائص الكمبوبوكس محاطه بمستطيل احمر وهذه صوره مكبره لخصائص الكمبوبوكس هنمسك اهم الخصائص والاكثر شيوعا فى الاستخدام ونبدا نشرح بالتفصيل 1- الخاصيه (Name) :- Name هو اسم الـ ComboBox المستخدم فى الاكواد وعند انشاء اى ComboBox يقوم الفيجوال بيسك بأعطاء اسم افتراضى له ComboBox1 واذا قمنا بعمل ComboBox ثانى فأن الفيجوال بيسك يعطى له اسم افتراضى ComboBox2 وانا افضل عدم تغيير اسماء ComboBox الافتراضيه التى عرفها الفيجوال بيسك فعندما نريد كتابه كود خاص بالعنصر ComboBox1 فى حدث Change على سبيل المثال يكون بداية الكود كالتالى Private Sub ComboBox1_Change() فأذا قمنا بتغيير اسم ComboBox1 كما عرفه الفيجوال بيسك الى اسم اخر من خاصيه Name وليكن مثلا غيرناه الى (Customers ) فهنا عند كتابة كود فى حدث Change يكون كالتالى Private Sub Customers_Change() ففى حال تغيير الاسم وعدم التزامك بالاسم داخل محرر الاكواد وكتابة كود يحدث Error ------------------------------------------------------------------------------------------------------------------------------------------------ 2- الخاصيه ( Back Color):- هذه الخاصيه تتيح للمستخدم تغيير لون خلفية للـ ComboBox على اليسار يوجد سهم اضغط عليه ستظهر لك قائمة يمكنك من خلالها اختيار اللون المناسب كما يحلو لك أنظر الصوره التاليه 3- الخاصيه ( Back Style):- هذه الخاصيه تحمل خيارين هما Fm Back Style TransParent - 0 ( عند الاختيار سيتوقف عمل الخاصيه Back Color حتى ولو كان تم اختيار لون بها وليكن خلفية سماوية كما هو بالمثال السابق سيظهر الـ ComboBox بخلفية ساده ) Fm Back Style Opague - 1 ( عند الاختيار سيتم عمل الخاصيه Back Color وهيكون الـ ComboBox بخلفية حسب الاختيارك من Back Color ) لذالك هذه الخاصيه مرتبطه بالخاصيه Back Color ********************************************************************************************************************** 4- الخاصيه ( Border Color):- هذه الخاصيه تتيح للمستخدم تغيير لون حدود اللـ ComboBox على اليسار يوجد سهم اضغط عليه ستظهر لك قائمة يمكنك من خلالها اختيار اللون المناسب كما يحلو لك 5- الخاصيه ( Border Style):- هذه الخاصيه تحمل خيارين هما Fm BorderStyle none - 0 ( عند الاختيار سيتوقف عمل الخاصيه Border Color حتى ولو كان تم اختيار لون بها وليكن لون حد أحمر سيظهر الـ ComboBox بلون حد ساده ) Fm BorderStyle Single - 1 ( عند الاختيار سيتم عمل الخاصيه Border Color وهيكون حدود الـ ComboBox بخلفية حسب الاختيارك من Border Color) لذالك هذه الخاصيه مرتبطه بالخاصيه Border Color مثال لو اختارنا لون خلفيه للـ ComboBox لون سماوى ولون حدود احمر شاهد الصورة ولاحظ ان الخاصيه Back Color اختيارها 1 وايضا الخاصيه Border Color اختيارها 1 شاهد الصوره التالية ولكن لو كان الخاصيه Back Color اختيارها 0 وايضا الخاصيه Border Color اختيارها 0 سوف يكون لون الخلفية ساده والحدود بدون لون **************************************************************************************************************** 6- الخاصيه ( Bound Column):- هذه الخاصيه تتيح للمستخدم تحديد العمود الذى سيظهر فى عنصر اخر عند الاختيار من الكمبوبوكس سنرى لاحقا مثال عملى ************************************************************************************************* 7- الخاصيه ( Column Count):- هذه الخاصيه تتيح للمستخدم تحديد كم عدد الاعمده التى ستظهر فى اللـ ComboBox بمعنى ادق يمكن عرض اكثر من عمود فى الكمبوبوكس سنرى لاحقا مثال عملى ************************************************************************************************* 8- الخاصيه ( Row Source ):- هذه الخاصيه هى اولى الطرق التقليدية لتعبئة الكمبوبوكس بالبيانات مثال عام على الخاصيه ( Bound Column) و الخاصيه ( Column Count) و الخاصيه ( Row Source ) لدينا شيت به بيانات افتراضيه كما هو ظاهر بالصوره التالية وعندى فورم بصممه شاهد الصورة أنا دلوقتى عايز اظهر اسماء العملاء من الخلية A2 : A5 فى الكمبوبوكس اللى فى الفورم من شاشة الخصائص اروح للخاصيه Row Source واكتب المدى A2:A5 شاهد الصورة شاهد النتيجة عن تشغيل الفورم طيب لو عايزين نظهر عدد 2 عمود بمعنى اظعر عمود اسماء العملاء وايضا عمود كود العميل اذن لازم اغير المدى فى الخاصيه Row Source واكتب المدى A2:B5 وايضا لازم احدد عدد الاعمده فى الكمبوبوكس يكون 2 من الخاصيه Column Count شاهد الصورة ستجد النتيجة عند تشغيل الفورم طبعا عند الاختيار من الكمبوبوكس سيظهر اسم العميل (اللى هى تعتبر العمود رقم واحد فى الكمبوبوكس ) فى الكمبوبوكس وتختفى قائمة العملاء فلو انا عايز عند الاختيار ايضا يظهر كود العميل فى التكست بوكس رقم 1 ( اللى هو باللون الاصفر فوق) اذن لازم نروح للخاصيه Bound Column واكتب 2 ( أى العمود رقم 2 هو القيمة التى ستظهر فى التكست بوكس رقم 1 ) شاهد الصورة باقى خطوة تانية وهى عمل كود فى حدث تغيير الكمبوبوكس كالتالى Private Sub ComboBox1_Change() TextBox1.Value = ComboBox1.Value End Sub هذا الكود كتبنا فيه ان التكست بوكس 1 يساوى الكمبوبوكس ( واحد هيقولى مش الكمبوبوكس فى عمودين اذن التكست بوكس هيكون اى عمود عند الاختيار هقوله ان الخاصيه Bound Column كتبنا فيها العمود رقم 2 اذن القيمة التى ستظهر فى التكست بوكس 1 هى العمود 2 ) وبكدا عند التشغيل الفورم والاختيار من الكمبوبوكس سيظهر قيمة العمود رقم 1 وهو اسم العميل فى الكمبوبوكس وسيظهر قيمة العمود رقم 2 وهو كود العميل فى التكست بوكس 1 ( بناء على تحديد الخاصيه Bound Column كتبنا فيها العمود رقم 2 وايضا الكود بحدث تغيير الكمبوبوكس ) وعند تشغيل الفورم واختيار من الكمبوبوكس شاهد النتيجة كدا اخدنا مثال عملى على الثلاث خصائص وهما الخاصيه ( Bound Column) و الخاصيه ( Column Count) و الخاصيه ( Row Source ) ************************************************************************************************************************** 9- الخاصيه ( Column Heads ):- وهذه الخاصيه تتيح للمستخدم التحكم فى ظهور رؤوس للاعمده او عدم ظهورها وهى تحمل خيارين أما True أو False عندد اختيار False وهو الاختيار الافتراضى بالفيجوال لا يظهر رؤوس للاعمده بـ ComboBox1 على الفورم عند فتحه شاهد الصوره عندد اختيار True يظهر رؤوس للاعمده بـ ComboBox1 على الفورم عند فتحه شاهد الصوره كما هو مبين بالصورة ان رؤوس الاعمده هى الخلية A1 والخلية B1 وذالك لان المدى للكمبوبوكس هو من A2:B5 فالفيجوال بيسك يقوم بشكل تلقائى بقراءة اول خلية تسبق المدى *********************************************************************************** 10- الخاصيه ( Column Widths ):- وهذه الخاصيه تتيح للمستخدم التحكم فى عرض الاعمده التى ستظهر فى الكمبوبوكس فى سبيل المثال عرض العمود رقم 1 هو 200 وعرض العمود رقم 2 هو 100 اذن لازم تتكتب كالتالى 200Pt;100Pt ( بينهم فاصله ; تكتب من خلال جعل لغة الكيبورد انجلش ثم اضغط على حرف ك بالعربى) شاهد الصوره واحد شاطر هيقولى هو لازم علشان اظهر العمود الثانى اتحرك بالاسكرول بار هقوله لا يوجد طريقه حلوة وهى الخاصيه ( List Width ) هنشرحها ونعرف ازاى نخليها تحل لنا المشكله وتظهر الاعمده بدون الاسكرول بار 11- الخاصيه ( List Width ):- عرض List الافتراضى هو عرض الكمبوبوكس مجموع عرض الاعمده كتبنا فى المثال السابق فى الخاصيه Column Widths ان عرض الاعمده هو 200Pt;100Pt اذن لابد من جعل عرض List مجموع عرض الاعمده 200Pt;100Pt يعنى هيساوى 300Pt وبكدا مش هيكون فى اسكرول بار والاعمده كلها ظاهر عند تشغيل الفورم شاهد الصوره ************************************************************************************************************** 12- الخاصيه ( DropButtonStyle ):- هذه الخاصيه تتيح للمستخدم التحكم فى شكل الكمبوبوكس شاهد الصوره اختر أى من الاشكال فى الصورة التى تناسب ذوقك ********************************************************************************** 13- الخاصيه ( Enabled ):- هذه الخاصيه تحمل خيارين true و False عند اختيار true سوف يكون بأمكان المستخدم الاختيارمن محتوى ComboBox وهو الاختيار الافتراضى بالفيجوال وعند اختيار False لا يكون بأمكان المستخدم الاختيارمن محتوى ComboBox ويكون الشكل باهت ********************************************************************************************** 14- الخاصيه ( Locked ):- هذه الخاصيه تحمل خيارين true و False عند اختيار False سوف يكون بأمكان المستخدم الاختيارمن محتوى ComboBox وهو الاختيار الافتراضى بالفيجوال وعند اختيار True لا يكون بأمكان المستخدم الاختيارمن محتوى ComboBox يعنى هيكون فى حمايه على ComboBox وهذه الخاصيه تشبه تماما الخاصيه Enabled الفرق الوحيد بينهم هو فى شكل التنسيق للكمبوبوكس ********************************************************************** 15- الخاصيه ( Font ):- وهذه الخاصيه تتيح للمستخدم التحكم فى نوع وسماكة وحجم الخط للنص داخل الـ ComboBox الافتراضى فى الفيجوال بيسك نوع الخط هو ( Tahoma ) والسماكه هى (Regular) وحجم الخط هو ( 8) ********************************************************************************************************** 16- الخاصيه ( Font Color ):- وهذه الخاصيه تتيح للمستخدم التحكم فى اختيار لون الخط للنص داخل الـ ComboBox ********************************************************************************************* 17- الخاصيه ( Height ):- وهذه الخاصيه تتيح للمستخدم التحكم فى ارتفاع الـ ComboBox فيمكنك أما من خلال التصميم السحب بالماوس للاسفل لتحديد الارتفاع للـ ComboBox أو كتابة رقم للارتفاع فى الخاصيه Height ********************************************************************************************* 18- الخاصيه ( Left ):- وهذه الخاصيه تتيح للمستخدم التحكم فى بعد الـ ComboBox عن الضلع الايسر للفورم **************************************************************************** 19- الخاصيه ( Top ):- وهذه الخاصيه تتيح للمستخدم التحكم فى بعد الـ ComboBox عن الضلع الاعلى للفورم مثال لو وضعنا قيمة Left 78 *** وقيمة Top 138 ستجد الصوره التالية *********************************************************************************************************************** 20- الخاصيه ( List Row ):- هذه الخاصيه من الخصائص المهمه لانها تتيح للمستخدم التحكم فى عدد الصفوف التى يتم عرضها عند فتح الـ ComboBox شاهد الصوره لو عايزين اظهار عدد 3 صفوف فقط شاهد الصوره التالية ************************************************************************************************************ 20- الخاصيه ( List Style ):- شاهد الصوره تتضح لك اهميه الاداه فمن خلالها يمكن التحكم فى طريقه عرض البيانات عن فتح الكمبوبوكس **************************************************************************************************************** 21- الخاصيه ( Width ):- وهذه الخاصيه تتيح للمستخدم التحكم فى عرض الـ ComboBox فيمكنك أما من خلال التصميم السحب بالماوس للاسفل لتحديد العرض للـ ComboBox أو كتابة رقم للعرض فى الخاصيه Width **************************************************************************************************************** 22- الخاصيه ( Visible ):- وهذه الخاصيه تتيح للمستخدم التحكم فى ظهور او عدم ظهور ComboBox عند عرض الفورم وعند الضغط على السهم المجاور لها ستجد لها خيارين True و False عندد اختيار True سوف يظهر الـ ComboBox على الفورم عند فتحه ( وهذا هو الخيار الافتراضى من الفيجوال بيسك ) وعند اختيار False ٍسوف يختفى الـ ComboBox على الفورم عند فتحه يعنى هيكون غير ظاهر ومخفى لا يراه المستخدم ****************************************************************************************************************
    1 point
  40. بسم الله الرحمن الرحيم الاخوه الكرام اليوم بمشيئة الله سنتكلم عن المحور الخامس والاخير كيفية عمل تنسيقات للقيم المدخله فى TextBox عرفنا قبل كدا فى الشروحات السابقه ما هى اوقات تنفيذ الكود هنعمل مراجعه بسيطه لربط شرح اليوم بالشروحات السابقه قبل أن نتحدث عن وقت تنفيذ الكود لازم نعرف أولا أزاى بيكون كتابة ألاعلان عن الكود للـ TextBox Private Sub TextBox1_AfterUpdate() هنا يتم كتابة الكود المراد تنفيذه End Sub السطر الاول هو بداية الاعلان عن الكود فنقوم بكتابة Private Sub ستجد لونها بالكود أزرق ( وهو بداية لاى كود خاص لأى عنصر تحكم داخل الفورم ) ثم نقوم بكتابة اسم العنصر المراد عمل الكود له وهو بمثالنا TextBox1 ثم نقوم بكتابة _ ( تكتب من خلال الضغط على Shift+زر الطرح الموجود بالاعلى بجوار زر + ) ثم نقوم بكتابة وقت تنفيذ الكود (هو هنا على سبيل المثال AfterUpdate ) ثم كتابة () قوسين بهذا الشكل وبمجرد الضغط انتر ستجد الكود عمل سطر تانى فيه End sub يوجد طريقه اخرى وهى اتبع الصوره التالية توضح لك قم بالضغط على اى مكان فاضى بالفورم وادخل لمحرر الاكواد الخاص بالفورم هنبدأ بالامثله العمليه لان بالمثال يتضح لنا المقال وانا راجل عملى مش بحب النظرى 1-التحكم فى تنسيق القيم المدخله فى التكست بوكس بعدد صحيح شاهد الكود Private Sub TextBox1_AfterUpdate() TextBox1.Text = Format(TextBox1.Text, "0") End Sub السطر الاول عرفنا انه الاعلان عن الكود وسوف يتم تنفيذه فى وقت تحديث التكست بوكس أى بعد الانتهاء من الادخال والانتقال او الخروج من التكست الى اى عنصر اخر على الفورم والسطر التانى هو الكود اللى هيتم تنفيذه شرح الكود ( السطر التانى ) شاهد الصوره هنا نوع التنسيق "0" تم وضعه بين علامتين تنصيص وبداخله 0 يعنى تنسيق التكست بوكس بعد الادخال يكون رقم صحيح فلو فرضنا حضرتك كتبت 20.60 وخرجت من التكست بوكس ستجد القيمة اصبحت 20 فقط ولا يوجد علامه عشريه -------------------------------------------------------------------------------------------------------------------------------------------------------- 2-التحكم فى تنسيق القيم المدخله فى التكست بوكس بوضع علامه عشريه Private Sub TextBox1_AfterUpdate() TextBox1.Text = Format(TextBox1.Text, "0.0") End Sub هنا نوع التنسيق "0.0" يكون رقم واحد بعد العلامه العشريه مثال لو حضرتك ادخلت 20 فقط ستجد التكست بوكس اصبح 20.0 ولو حضرتك دخلت 20.2 ستجد التكست بوكس اصبح 20.2 ولو حضرتك دخلت 20.50 ستجد التكست بوكس اصبح 20.5 فقط يعنى سوا دخلت رقم عشري واحد او ادخلت رقمين عشريين او لم تدخل ارقام عشريه ستجد النتيجة بعد رقم عشرى واحد طيب لو احنا عايزين رقمين بعد العلامه العشريه الموضوع بسيط جدا هنخلى التنسيق كالتالى "0.00" شاهد الكود Private Sub TextBox1_AfterUpdate() TextBox1.Text = Format(TextBox1.Text, "0.00") End Sub لاحظتم الفرق طيب لو 3 أرقام عشريه Private Sub TextBox1_AfterUpdate() TextBox1.Text = Format(TextBox1.Text, "0.000") End Sub ------------------------------------------------------------------------------------------------------------------------------------ 3-التحكم فى تنسيق القيم المدخله بوضع علامه العمله $ Private Sub TextBox1_AfterUpdate() TextBox1.Text = Format(TextBox1.Text, "0" & "$") End Sub هنا تم "0" ( وهو تنسيق رقم صحيح) ثم علامه & ( تكتب من خلال الضغط على Shift+رقم 7 فوق الحروف ) ثم ثم وضع علامه العمله "$" بين اقواس تنصيص فلو حضرتك كتبت 20 ستجد $20 واحد هيقولى هو مش ممكن يكون العلامه يسار الرقم وليس يمين الرقم هقوله ممكن وليه لا هنعكس الموضوع بدل "$"&"0" هنخليها "0"&"$" Private Sub TextBox1_AfterUpdate() TextBox1.Text = Format(TextBox1.Text, "$" & "0") End Sub فلو حضرتك كتبت 20 ستجد النتيجة 20$ طيب ممكن نخلى علامه العمله وكمان وجود ارقام عشريه طبعا ممكن Private Sub TextBox1_AfterUpdate() TextBox1.Text = Format(TextBox1.Text, "$" & "0.00") End Sub فلو حضرتك كتبت 20.1 ستجد النتيجة 20.10$ ---------------------------------------------------------------------------------------------------------- 4-التحكم فى تنسيق القيم المدخله بوضع نص بجوار الرقم Private Sub TextBox1_AfterUpdate() TextBox1.Text = Format(TextBox1.Text, "0" & "ريال") End Sub هنا تم كتابه النص بين علامتى تنصيص " ريال" فلو حضرتك كتبت 20 ستجد النتجية 20 ريال -------------------------------------------------------------------------------------------------------------------- 5-التحكم فى تنسيق القيم المدخله بوضع علامه % Private Sub TextBox1_AfterUpdate() TextBox1.Text = Format(TextBox1.Text, "%0") End Sub فلو حضرتك كتبت 20 ستجد النتيجة %20 ( اذا كانت لغة الكتابه بالكيبورد عربى ) أما اذا كانت لغة الكتابة انجليزى وكتبت رقم 20 ستجد النتيجة 20% فمن خلال لغة الكتابه بالكيبورد تقدر تتحكم فى مكان العلامه % هل تكون قبل الرقم أم بعده واحد هيقولى هو ممكن نجعل الرقم بعلامات عشريه مع وجود علامه % هقوله ليه بس الاحراج يا عبدالتواب شوف يا سيدى الكود التالى Private Sub TextBox1_AfterUpdate() TextBox1.Text = Format(TextBox1.Text, "%0.00") End Sub فلو حضرتك كتب 20.1 ستجد النتيجة 20.10% ---------------------------------------------------------------------------------------------------------------------------------------- 6-التحكم فى القيم المدخله اذا كانت سالبه توضع بين اقواس Private Sub TextBox1_AfterUpdate() TextBox1.Text = Format(TextBox1.Text, "0;(0)") End Sub فلو حضرتك كتبت -50 ستجد النتجية (50) يعنى تحول اى رقم سالب الى بين اقواس طيب لو كان الرقم السالب فيه علامات عشريه شاهد الكود ولاحظ الفرق البسيط Private Sub TextBox1_AfterUpdate() TextBox1.Text = Format(TextBox1.Text, "0;(0.00)") End Sub مثال لو حضرتك كتبت-20.1 ستجد النتيجة (20.10) -------------------------------------------------------------------------------------------------------------------- 7-التحكم فى القيم المدخله اذا كانت تاريخ لو حضرتك عايز تكتب تاريخ وليكن 2015/8/6 وعايز بعد الادخال يظهر فقط اليوم Private Sub TextBox1_AfterUpdate() TextBox1.Text = Format(TextBox1.Text, "dd") End Sub ستجد ان النتيجه 6 dd تشير الى Day يعنى اليوم **************************************************************************** لو انا عايز النتيجة 6 اللى هى اليوم تظهر فى التكست بوكس 2 ( TextBox2) Private Sub TextBox1_AfterUpdate() TextBox2.Text = Format(TextBox1.Text, "dd") End Sub فلو حضرتك كتبت التاريخ 2015/8/6 فى التكست بوكس 1 ستجد التكست بوكس 2 مكتوب فيه 6 ************************************************************************************************ لو عايزين نظهر الشهر فقط هنستبدل dd بـ mm وهى اختصار لكلمة (Month) Private Sub TextBox1_AfterUpdate() TextBox2.Text = Format(TextBox1.Text, "mm") End Sub ستجد النتجية ظاهره فى التكست بوكس 2 وهى 8 ************************************************************************************** لو عايزين نظهر السنه. هنستبدل mm بـ yyyy وهى اختصار Year Private Sub TextBox1_AfterUpdate() TextBox2.Text = Format(TextBox1.Text, "yyyy") End Sub ستجد النتيجة فى التكست بوكس 2 هى 2015 ***************************************************************************************** لو عايزين نظهر اليوم كتابه 06-08-2015 يطلع فقط الخميس Private Sub TextBox1_AfterUpdate() TextBox2.Text = Format(TextBox1.Text, "dddd") End Sub ستجد النتيجة فى التكست بوكس 2 هى الخميس ********************************************************************************** لو عايزين نظهر الشهر 06-08-2015 يظهر فقط اغسطس Private Sub TextBox1_AfterUpdate() TextBox2.Text = Format(TextBox1.Text, "mmmm") End Sub ستجد النتيجة هى اغسطس ********************************************************************** لو عايزين ننسق التاريخ المدخل يكون كالتالى 06/08/2015 Private Sub TextBox1_AfterUpdate() TextBox1.Text = Format(TextBox1.Text, "dd/mm/yyyy") End Sub ****************************************** لو عايزين ننسق التاريخ المدخل يكون كالتالى2015/08/06 شوف الكود Private Sub TextBox1_AfterUpdate() TextBox1.Text = Format(TextBox1.Text, "yyyy/mm/dd") End Sub ****************************************** لو عايزين ننسق التاريخ المدخل يكون كالتالى06-08-2015 يعنى يكون العلامه بدل من / تكون - Private Sub TextBox1_AfterUpdate() TextBox1.Text = Format(TextBox1.Text, "yyyy-mm-dd") End Sub ****************************************** لو عايزين نجعل التاريخ كالتالى 06-08-15 ( يعنى أظهار السنه رقمين فقط Private Sub TextBox1_AfterUpdate() TextBox1.Text = Format(TextBox1.Text, "yy-mm-dd") End Sub هنا خلينا السنه بدل من yyyy الى yy فقط ****************************************** لو عايزين ننسق التاريخ كدا 06 أغسطس2015 Private Sub TextBox1_AfterUpdate() TextBox1.Text = Format(TextBox1.Text, "dd mmmm yyyy") End Sub ****************************************** لو عايزين نخلى التاريخ يظهر كالتالى الخميس أغسطس 2015 Private Sub TextBox1_AfterUpdate() TextBox1.Text = Format(TextBox1.Text, "dddd mmmm yyyy") End Sub ****************************************** لوعايزين نظهر تاريخ اليوم بمجرد وضع مؤشر الماوس فى التكست بوكس Private Sub TextBox1_Enter() TextBox1.Text = Format(Now, "yyyy/mm/dd") End Sub هنا استخدمنا وقت التنفيذ الحدث Enter ****************************************** 8-التحكم فى أجبار المستخدم على ادخال ارقام فقط فى التكست بوكس Private Sub TextBox1_Change() If Not IsNumeric(Me.TextBox1.Value) Then: MsgBox " الرجاء ادخال أرقام فقط ", vbCritical, "خطأ": Me.TextBox1.Value = "": Exit Sub End Sub هنا عملنا كود فى حدث التغيير للتكست بوكس بمجرد كتابة اى حرف وليس رقم ستجد التكست بوكس يرفض الادخال ويقوم بمسح المحتوى اللى تم ادخاله وكمان يظهر رساله استخدمنا فى الكود IF Not IsNumeric ثم التكست المراد ادخال ارقام فقط ووضعه بين قوسين ثم اقفال IF بـ then ****************************************** 9-التحكم فى أجبار المستخدم على ادخال حروف فقط فى التكست بوكس نفس الكود السابق ولكن بدون Not Private Sub TextBox1_Change() If IsNumeric(Me.TextBox1.Value) Then: MsgBox " الرجاء ادخال حروف فقط ", vbCritical, "خطأ": Me.TextBox1.Value = "": Exit Sub End Sub ****************************************** **************************************************************************** ******************************************************** ************************************** الى هنا بحمد الله انتهيت من شرح الخمس محاور المتعلقه بالتكست بوكس والى لقاء اخر من حلقات علمنى كيف اصطاد وسيكون بأذن الله الكمبوبوكس
    1 point
  41. اخى الحبيب الفضل اولا لله سبحانه وتعالى ثم بعد ذلك للاستاذ أبا عمر جزاه الله كل الخير انم شاء الله ما انا الا رسول راسلته واوضحت وشرحت المشكله وبينت بوضوح طلبك بعد ان بائت كل محاولاتى بالفشل للاستاذ القدير والمعلم الجليل أبا عمر ويعلم الله اثقلت عليه وتحملنى بكل حب وحلم ود وفاجئنى بتلك النتيجه الطيبة ماشاء الله وطلبت منه رفعها فى الموضوع اخبرنى قائلا وكان هذا رده الكريم قم أنت برفعها للمشاركة أنا وأنت واحد المهم أن قُضيت حاجة أخينا السائل. من يستحق الشكر بعد رب العباد سبحانه وتعالى هو هذا الاخ الحبيب والمعلم الجليل والاستاذ القدير اسال الله ان يرزقه كل الخير ان شاء الله وان يجمعنا واياه ومن جمعنا بهم الله فى الدنيا واحببناهم دون ان نساله فى الجنه ولا يحرمنا منهم ونحن نسأله ان شاء الله
    1 point
  42. كل كلمات الشكر وكل التقدير لا تكفينا حتى نعطه حقه الاستاذ الجليل والمعلم القدير أبا عمر ناقشت معه هذا الموضوع عبر الرسائل الخاصة ولم يتأخر ولم يتهاون فى تنفيذ مطلب الاخ الكريم ابو عبير سأرفع المرفق كما قام به الاستاذ أبا عمر بناء على طلبه جزاه الله عنا كل الخير المرفق بتعديل الاستاذ أبا عمر اتمنى اضافة الموضوع الى مكتبة امثلة الاكسس الخاصة بالموقع لان الموضوع هذا بحثت عنه مرار وتكرارا وفقط يصبح الحل حصرى فى منتدانا الكريم بفضل الله سبحانه وتعالى ثم الاستاذ الجليل والمعلم القدير أبا عمر جزاه الله كل الخير ابا عمر.rar
    1 point
  43. للعلم افضل حل هو حل الاستاذ jjafferr فى المشاركة رقم #16 انا لم انتبه اليها من قبل ولكن عند استعراض الموضوع بكل المشاركات جيدا وجدت هذه المشاركة الرائعه للاستاذ الجليل والمعلم القدير الاستاذ جعفر انا اخر شئ وصلت له قبل البحث فى مشاركات الاعضاء والاساتذة فى هذها الموضوع هو تصغير الشاشة لتكون خلف النموذج ولكن باختلاف حجم الشاشة قد تظهر مرة اخرى ولما عثرت على مشاركة الاستاذ الجليل والمعلم القدير الفنان جعفر وجدت انها هى الحل ولكن السؤال الان الاهم هو هل يمكن بالفعل تضمين هذا الكود بأى طريقة فيكون ضمن كائنات القاعده سواء كان كود فى حدث او وحدة نمطية
    1 point
  44. هل هذا الحل مرضى ؟ بعيدا عن ظهور الايقونه بجوار الساعه ؟1 للعلم اما هذا الحل او الحل بظهور الايقونه بجوار الساعه دون شريط المهام وهذا من وجهة نظرى طبعا لست محترف او مبرمج انا مجرد هاوى ولكن هذا ما توصلت ولم اتوصل لغير هذه النتيجه قد تجد الحل الوافى الشافى ان كان هناك عند الاساتذة الاجلاء جزاهم الله عنا كل الخير --Maham Almodeer.rar
    1 point
  45. أخي الغالي بارك الله فيك وفي ذريتك أخي أشكر لك إهتمامك وحرصك . الله لا يحرمك الأجر ولا يحرمنا مشاركاتك . أخي هذا حل ليس عملي . ننتظر من الإخوة حل برمجي لهذه المشكلة إن شاء الله . أخي مرة أخرى أشكرك على متابعتك معنا لهذه المشكلة . تقبل فائق تقديري واحترامي .
    1 point
  46. السلام عليكم ورحمة الله وبركاتة المرفق عبارة عن addin يقوم باضافة tool تقوم بتغير الخط من صغير الى كبير و من كبير الى صغير وتغير اول حرف كبير والباقى صغير كما فى مشاركتى السابقة بدون كتابة اكواد وبها اضافة تجعل جميع الحروف كبيرة مع اختلاف حجم خط اول حرف CaseChange.zip
    1 point
  47. الحمد لله رب العالمين اللهم وفقنا لما تحبه وترضاه وأجعل عملنا خالصاً لوجهك الكريم ولا تحرمنا الأجر والمثوبة. قائد المشروع / المهندس _ محمد طاهر ليس تنصلاً من المسؤلية خلاص ولا يهمك أنا النائب وما تشيلش هم القيادة كلنا يد واحدة عمل الخير ليس فيه إلزام فللجميع مطلق الحرية من يرغب المشارك فأهلا به متى ما شاء يشارك ومتى ما شاء ينسحب من المشاركة. سررة كثيراً بإنظمام أهل الخبرة كذلك القدرات المختلف فأهل الخبرة ينيرون لنا طريقنا وأهل الخبر المتباينة نأخذ بأيديهم ويأخذون بأيدينا قد يفيدوننا ويستفيدون يفيدوننا بأرائهم وإقتراحاتهم ويستفيدون من البرنامج كونه متكامل وقد يشمل على أغلب ما يطرح من استفسارات . بإذن الله سوف يتم هذا العمل ، صراحة مشاركات كثيرة في العمل الجماعي لا تنتهي وكلنا يعرف ذلك ولكن العزيمة موجودة والإمكانيات متاحة والأمور يسيره ولحمد لله وبوجود الجميع للتعاون وتبادل الخبرات سوف يكتب لهذا العمل النجاح بإذن الله. بارك الله في الجميع وشكراً للمهندس الأخ / محمد على تفضله بالموافقة. بالنسبة لمتطلبات المشروع فهي التالي: فتح قسم خاص باسم " قسم إعداد البرامج " ونفتتحه بهذا المشروع إذا كان ذلك سهل أو تثبيت الموضوع . سوف يمر البرنامج بعدة مراحل ولسنا مستعجلين عليه أهم شيء نصل في النهاية لعمل ممتاز . المراحل : هي أربع مراحل تقريباً. مرحلة التحليل والمناقشة. مرحلة تصميم الجداول والاستعلامات مرحلة تصميم النماذج وتشمل الشفرات البرمجية " الكود " مرحلة تصميم التقارير طبعاً مع البهارات في الأخير. فكل من يريد المشاركة يجهز ما في حقيبته من تصورات وكل واحد يتخيل أن البرنامج له شخصياً وهو صاحب محل تجاري فماذا يتمنى أن يحتويه البرنامج من سهولة في الاستخدام وقوة ودقة وخصوصاً في العمليات الحسابية. كل ذلك لا بد أن نناقشة حتى نطلع بعمل ممتاز فالبرنامج لا بد أن يكون متقن فسوف يستخدمه الكثير ويحتوي على قروش _ قروش ياجماعة الخير مش أي كلام كذلك حتى لا يدعى علينا بدلاً من أن يدعى لنا. أتمنا للجميع التوفيق
    1 point
×
×
  • اضف...

Important Information