نجوم المشاركات
Popular Content
Showing content with the highest reputation on 03/24/16 in all areas
-
الاخوه فى هذا الصرح العلمى الكبير اعتذر عن قلة تواجدى فى الاونه الاخيره ولكن يعلم الله انى مشغول جدا هذه الايام اسالكم الدعاء لى بالتوفيق والسداد اليوم بأقدم لكم شرح مبسط عن النسخ والقص أو الترحيل بواسطة Destination وهى تعنى هدف الوصول أو مكان الوصول أو المكان المقصود هنعرف 1 - أزاى نعمل ده بدون اكواد من خلال التعامل مع الشيت مباشرة 2- أزاى نعمل ده بالاكواد نبدأ بسم الله عايزك تفتح شيت اكسيل وتكتب فى الخليه A1 مثلا اى شئ مثلا اكتب " اوفيسنا " المطلوب بعد ما تكتب فى الخليه A1 نقوم بنسخها الى اى خليه اخرى طبعا زى ما حضراتكم عارفين بيكون من خلال تحديد الخليه المطلوب نسخها وهى A1 تم نعمل Ctrl+C ونذهب الى المكان اللى احنا عايزين نقوم بعملية لصق الخليه بها وليكن الخلية D1 ثم نعمل Ctrl+V وفى طريقه تانية وهى الوقوف على الخليه A1 وكليك يمين بالماوس واختيار نسخ ثم تحديد الخليه D1 وكليك يمين ونعمل لصق لكن اليوم هنعمل عملية النسخ بطريقه Destination طيب ازاى ؟؟؟ حدد الخليه A1 ثم حرك الماوس الى اى ضلع من اضلاع الخليه ستجد فى سهم مثل هذا السهم دا صوره مكبره منه عندما يظهر هذا السهم على ضلع من اضلاع الخلية اضغط من الكيبورد على زر Ctrl ومع الاستمرار بالضغط على الزر اضغط على زر الماوس الايسر واسحب الماوس الى الخليه D1 مكان اللصق اللى احنا عايزينه طيب ده بالنسبه لعملية النسخ طيب عملية القص ؟؟ الطريقه الاولى تحديد الخليه المطلوب قصها وهى A1 تم نعمل Ctrl + X ونذهب الى المكان اللى احنا عايزين نقوم بعملية لصق الخليه بها وليكن الخلية D1 ثم نعمل Ctrl+V الطريقه التانية وهى الوقوف على الخليه A1 وكليك يمين بالماوس واختيار قص ثم تحديد الخليه D1 وكليك يمين ونعمل لصق الطريقه الثالثه اللى هى اساس موضوعنا هنعمل عملية القص بطريقه Destination طيب ازاى ؟؟؟ حدد الخليه A1 ثم حرك الماوس الى اى ضلع من اضلاع الخليه ستجد فى سهم عند ظهوره يمكنك الضغط على زر الماوس الايسر والسحب الى المكان المراد اللصق فيه الخلاصه الطريقه عملية النسخ عملية القص 1- من خلال الكيبور اضغط Ctrl+C ثم انتقل الى الخلية اضغط Ctrl+X ثم انتقل الى الخلية المراد النسخ بها واعمل Ctrl+V المراد اللصق بها واعمل Ctrl+V --------------------------------------------------------------------------------------------------------------------------------------------- 2- من خلال الماوس قم بتحديد الخلية وكليك يمين بالماوس قم بتحديد الخلية وكليك يمين بالماوس واختار نسخ ثم انتقل الى الخليه المراد واختار قص ثم انتقل الى الخليه المراد اللصق بها واعمل كليك يمين بالماوس اللصق بها واعمل كليك يمين بالماوس واختار لصق واختار لصق --------------------------------------------------------------------------------------------------------------------------------------------- 3-Destination حدد الخلية المطلوب نسخها واتجه بالماوس حدد الخلية المطلوب نسخها واتجه بالماوس ( المكان المقصود) الى اى ضلع من اضلاع الخليه هيظهر سهم الى اى ضلع من اضلاع الخليه هيظهر سهم اضغط من الكيبورد على زر Ctrl ومع الاستمرار اسحب الماوس الى المكان المطلوب اللصق به بالضغط اسحب الماوس الى المكان المطلوب اللصق به ----------------------------------------------------------------------------------------------------------------------------------------------------- طيب ازاى نعمل الطريقه رقم 3 Destination ( المكان المقصود) بالاكواد Sub Alsaqer1() Range("A1").Copy Destination:=Range("d1") End Sub طبعا السطر الاول والثالث معروف وهو الاعلان عن بداية الكود ونهايته السطر اللى فى المنتصف بقى هو اللى هنوضحه كتبت اسم الخلية A1 المطلوب نسخها من خلال الخاصيه Range كالتالى ("Range("A1 وبعدين كتبت . اللى هى الضغط على حرف ز بالعربى من الكيبور ثم Copy وتعنى نسخ وبعدين مسافه وكتبة Destination متبوعه =: ثم الخلية المراد اللصق بها ("Range("D1 طيب الكود هيكون ازاى لو عايز اعمل قص وليس نسخ بسيطه جدا نفس الكود مع استبدال Copy Sub Alsaqer2() Range("A1").Cut Destination:=Range("d1") End Sub طيب الكلام كله عن نسخ او قص خليه واحده ماذا لو كان المطلوب نسخ نطاق من الخلايا مثلا من A1:C5 الى الخلايا H1:J5 اولا من خلال شيت الاكسل حدد الخلايا من A1:C5 وحرك الماوس الى اى ضلع من اضلاع التحديد سيظهر امامك السهم عند ظهوره اضغط على زر Ctrl ومع الاستمرار بالضغط حرك الماوس الى الى الخلية H1 ستجد تم نسخ الخلايا طيب ولو عملية القص هيكون نفس الخطوات ولكن بدون الضغط على زر Ctrl يعنى عند ظهور السهم اسحب الماوس الى الخليه H1 طيب ومن خلال الكود لو نسخ شاهد الكود Sub Alsaqer3() Range("A1:C5").Copy Destination:=Range("h1") End Sub نفس الاكواد السابقه الفرق فقط هو بدل ("Range("A1 جعلتها ("Range("A1:C5 ولو قص الخلايا يبقى الكود كالتالى استبدل Copy بــ Cut Sub Alsaqer4() Range("A1:C5").Cut Destination:=Range("h1") End Sub ماذا لو كان المطلوب نسخ الخلايا الى شيت اخر شاهد الكود نفس السابق ولاحظ انت الفرق Sub Alsaqer5() Range("A1:C5").Cut Destination:=Sheet2.Range("h1") End Sub استبدلت ("Range("h1 بــ ("Sheet2.Range("h1 لو احنا عايزين ننسخ عمود A كله مثلا الى العمود F طبعا من خلال الشيت يبقى تحدد العمود كله واذهب الى اى ضلع من العمود هيظهر السهم اضغط على زر Ctrl ومع استمرار الضغط اسحب الماوس الى العمود المطلوب وهو F ولو قص يبقى نفس الخطوات بدون الضغط على زر Ctrl ولو عايزين نعمله بالكود شاهد الكود Sub Alsaqer6() Columns("a:a").Copy Destination:=Columns("f:f") End Sub ------ ماذا لو كان عندى نطاق متغير مثلا من جدول من العمود A الى C ولكن عدد صفوف الادخال غير محدد فى زياده او نقصان فى الحاله دى هعمل سطر لتحديد اخر صف به بيانات فى العمود A شاهد الكود Sub Alsaqer7() lr = Cells(Rows.Count, "A").End(xlUp).Row Range("A1:C" & lr).Copy Destination:=Range("h1") End Sub واخيرا الفائده من هذه الطريقه هى افضل بالاكواد نظرا لسرعه تنفيذ الكود وبساطه كتابته وفهمه كدا انا خصلت كل الامثله باقى انك بس تجرب بنفسك اسال الله تعالى لى ولكم التوفيق والسداد تقبلوا تحياتى3 points
-
حياكم الله اخواني الكرام استاذ جعفر انا لا اقصد فتح الجدول بمعنى استخدامه فعليا للإضافة !!! اقصد ان يكون النموذج غير منضم بمعنى ليس مصدره الجدول unbound form استاذ عبد الفتاح الحكمة وهذا ما اعرفه وقابل للنقاش والتعديل كما اشرت سابقا 1- التحكم الكامل في ادخال السجلات الى القاعدة .. بدلا من الإدخال والتعديل على مصدر السجلات مباشرة . بمعنى عند التحقق من جميع البيانات يتم الحفظ ... ولكن بالنماذج المنضمة فأنت تضيف مباشرة الى الجدول . 2- عند استخدام القاعدة على الشبكة لأكثر من مستخدم .. يمنع حدوث التكرار .. او عدم حفظ السجل نتيجة التكرار ... كذلك عدم فتح مصدر السجلات كاملا مما يسبب بطء في عمل القاعدة. 3- نحن نريد ان نحفظ سجل جديد فقط ,, لماذا احضر جميع بيانات الجدول . المثال : DoCmd.RunSQL "insert into table1 (id,Nname,Age) values (txtId,txtNname,txtAge)" فكرة ممتازة جدا بارك الله فيك استاذ عبد الفتاح بالتوفيق للجميع3 points
-
السلام عليكم أخي الحبيب الصقر: رائع جداً ما قدمته ومفيد ومبسط غاية التبسيط ..والحقيقة أنا كنت أعمل بذلك دون الأكواد أي من خلال الكيبورد والماوس بشكل تلقائي إذ يمكنني القول أنه روتين يومي .... عوداً حميداً ...بقدر اشتياقنا لكم ولعلمكم ولأخلاقكم السمحة الطيبة أيام طيبة جميلة تلك التي كنا نرتاد فيها علمني كيف أصطاد - الفورم. ومضات مشرقة في حياتنا نرجو أن لا تتضاءل أو تتلاشى بغيابكم المتكرر الطويل نوعاً ما. تقبل تحياتي ومحبتي . والسلام عليكم ورحمة الله وبركاته3 points
-
عودة النسر الباشمهندس علي السحيب حفظه الله وبارك فيه من عمالقة المنتدى يتميز اسلوبه بالسهل المفيد ولغة مخاطبته للناس راقيه جدا ... ارجو ان تعطوه منزلته وقدره الكريم من الاحترام اعطوا الناس منازلهم ودعاؤنا لله ان يجعله عودا حميدا للمنتدى واحبابه2 points
-
2 points
-
اتوفع انزل نسخة اخرى فيه ملاحظة ولا اعلم مدى جدواها لاحظت ان الرقم 2 الاحق لاسم النموذج كتب بالشكل العربي والهندي الاصل ! الاكسس النسخة العربي لديه القدره على التفريق بين "نموذج" و "form" وعند استخدام الكائنات المبنية مثل "نماذج" يفهمها "forms" ولكن ياترى لديه القدرة على التفريق بين الارقام العربية وهندية الاصل كما بصورة الكود لديك وبين الارقام لنظام التشغيل ؟؟ وخاصة اثناء التحويل لانه يمكن لم يتعرف على الرقم ! حاول ان تكون الاسماء حروف انجليش كاملة للازرار وللنماذج ! وهذا مالدي و اتمنى ان افدتك اخي الاستاذ كرار ولم اضيع وقتك ! وكلمة حق اقولها في العراقيين : بانهم تربعو على عرش الابداع والتميز والاتقان في جميع العلوم في العالم العربي ويمكن الاخوة الاردنيين اصبحو قريبين من هذا العرش في وقتنا الحاضر ! اجمل التحايا2 points
-
ألف مبروك لنا ولأخوتنا في المنتدى عودة الاستاذ الغالي علي السحيب صاحب أفضال كثيرة على الكثير من الأخوة الأعضاء و أنا منهم تحياتي لكم جميعا وله كل التقدير وفقكم ووفقه الله2 points
-
حياك الله استاذ محمد وزادك الله تواضعا وعلما وجهة نظري ان النقاش مازال في الحلقة الأولى ولم يتسع الى ابعد من ذلك . استاذ عبد الفتاح هذا المثال ولا اعتقد ان هذا المثال بغريب على استاذ مثلك !! بالتوفيق جميعا SQLdemo.rar2 points
-
استاذ عبدالفتاح احنا الاثنين نعمل بطرق مختلفة وقد واجهت الكثير من الصعوبات في هذه المسألة بالذات ، لهذا السبب قدمت هذا الاقتراح جعفر2 points
-
حياك الله استاذ كرار حصر المشكلة هو نصف الحل فمارايك نحصر المشكلة بتجارب معينة 1. اذهب الى انشاء ماكرو جديد ولا تدرج شيئا ومن نافذة فئات الاحداث قد تكون على اليمين او اليسار حسب اصدارك >> يوجد فئة "في هذه القاعدة" طبعا بالانجليش "in this database" >> قم بتوسيع الفئات حتى تصل للماكرو المضمن بالنموذج المحدد >> اختر بالماوس اليمين اضافة الى الماكرو >> سيتم ادراجه كماكرو منفصل وفي نافذة الماكرو طبعا المفتوحة >> هنا اصبح الامر ماكرو منفصل ولم يحفظ بعد >> انقر الامر تحويل الى كود من شريط الادوات اعلى >> طبعا سيطالبك بحفظ الماكرو واحفظه ثم ستاتي رسالة التحويل >> قم بالتحويل هنا هل تم التحويل او ماهي النتائج ؟؟ ويتبع بعد النتائج !! بالتوفيق2 points
-
السلام عليكم إخوتي الكرام حريٌّ بنا مراجعة الأكواد وتطبيقها بشكل عملي كتمرين لأن الفهم لا يقاس بالنسبة لنا بل التحصيل والتمرين والتجربة والخطأ مرة ثم إصلاحه جزاكم الله خيراً والسلام عليكم.2 points
-
السّلام عليكم و رحمة الله و بركاته كم هو رائع أن أرى دروس الأستاذ الكريم و الأخ الغالي " حسام عيسى " من جديد إشتقنا لك حبيبي العزيز .. و لدروسك المميّزة و الممتازة الحمد لله أوّلاً و أخيرًا أنّك هنا معنا .. فائق إحتراماتي لشخصك الكريم2 points
-
عَوِّد لِسانَكَ قَولَ الخَيرِ تَنجُ بِهِ مِن زَلَّةِ اللَفظِ بَل مِن زَلَّةِ القَدَمِ وَاِحرِز كَلامَكَ مِن خِلٍّ تُنادِمُهُ إِنَّ النَديمَ لَمُشتَقٌّ مِنَ النَدَمِ2 points
-
أولا ما الحكمة فى ذلك ثانيا أعطى مثالا على ذلك لعلى أشارككم بلغت الانتباه إلى ما يمكن تسميته جداول الحركة و هى جداول هامة جدا يسجل فيها التغيرات الحادثة فى عنصر ما مثلا راتب الموظف في بداية تعيينه فى العام الأول فى الثانى الثالث فهذه الجداول تعطينا تاريخا عن التغيرات الحادثة براتب الموظف على مدى الأزمان وليس فقط راتبه الحالى و مثله جدول الدرجات فرق بين أن تنشئ حقلا للدرجة الحالية و أن تنشئ جدول لتاريخ الدرجات التى حصل عليها الموظف إن مثل هذه الجداول هى روح قاعدة البيانات و بها تعتبر هذه القاعدة كنزا من المعلومات لمن يطلبه من فضلكم علقوا على كلامى كى أستفيد أخرجوا ما فى جعبكم من العلم2 points
-
السلام عليكم انا سوف انظر الى ملاحظاتكم ، واعلّق عليها ، اما البرنامج فاترك لكم النظر فيه 1. ياريت يُكتب هذا الكلام بحروف من ذهب ، ويُعلق في منتدى الاكسس تسلم ايدك أخوي ابو خليل على التبسيط وللأسف ، هناك من المبرمجين من يبدأ بالعلاقات ، و وايلاه ، يتعقد الموضوع عنده وووو ، وهو في الاصل ليس بحاجة الى علاقة بين الجداول اصلا 2. طبعا هذا من الشروط الاساسية لعمل قاعدة البيانات ، فعن طريق النموذج ، تسيطر على بيانات الادخال ، ورجاء ، رجاء ، لا تعمل Dlookup في الجدول لأي من الحقول ، وانما اعملها في النموذج ، بحيث تكون البيانات في الجدول واضحة ، دون اللجوء الى جدول آخر 3. وهذه هي الطريقة الصحيحة وأخي كرار له وجهة نظر صحيحة في بعض البرامج ، إلا انه لا يُفضل عمله لمثل هذا البرنامج واعطيك سببين لأهمية هذه الجداول من تجربتي: أ. وبعد استعمال احد البرامج في احد المؤسسات بفترة ، اخبرني المستخدم بأن احد المسميات تم تغييرها رسميا !! فاذا كانت الجداول مثل ما اقترح اخوي ابو خليل ، فما كان عليّ إلا ان اغير المسمى في سجل واحد في جدول الخدمية فقط ، وإلا ، فيجب تغيير المسميات في جميع السجلات في الجدول ، واذا كانت هذه المسميات في جداول اخرى فنعمل نفس الشئ ، والمشكلة الكبرى تكون في الكود ، بحيث يجب ان يتم تغييرها هناك ايضا ، وفي الاستعلامات والتقارير وووو ، إن وُجدت ب. من السهل عمل اكثر من لغة للمسمى ، كذلك في جدول الخدمية ، وبدون تغيير اي شئ في الجدول الاصل جعفر2 points
-
حسب ما فهمت دا المطلوب الاول : كل ما هاتفتح الشيت هتلاقى الخلية النشطة هى اللى متحددة فى الكود Sheet1 : zz3000 Sheet2 : AS20 Sheet3 : A7 sss.rar2 points
-
السلام عليكم ورحمة من لدنه بركات الاستاذ الصقر الكريم ارجو منك أن لا تغيب عنا انت رائع بارك الله بك وبجهودك جزاك الله كل خير وجعلها في ميزان أعمالك2 points
-
جزاكم الله خيرا يا ابويوسف ان شاء الله نواصل ونكمل ما بدأناه فى القريب العاجل تقبل تحياتى2 points
-
استاذى الحبيب ابويوسف لما يشغلنى عنكم الى الشدائد شاكر لك كلماتك الطيبه والكل بالمنتدى خير وبركه فانا تلميذ من تلامذه هذا الصرح الاستاذى الفاضل احمد الفلاحجى مشكور يا غالى على دعائكم وفقكم الله وجزاكم الله خيرا تقبلوا تحياتى2 points
-
وعليكم السلام ورحمة الله تفضلي أختنا الفاضلة هذه الطريقة ويفضل مستقبلا الابتعاد عن المسميات العربية =DCount("[تم]";"sdad";"[تم]=-1 and [رقم]=forms![a]![sdad نموذج فرعي]![رقم]") تجميع علامه صح.rar2 points
-
الأخ الحبيب ناصر سعيد بارك الله فيك وجزاك الله كل خير على هذه المباردة الطيبة بتهنئة المنتدى بعودة عالم من علمائها .. الأخ الغالي الغائب عن العين الحاضر في القلب علي السحيب .. عوداً حميداً ولا حرمنا الله من تواجدك بيننا ومعنا في وسط إخوانك وأحبابك تقبلوا تحياتي2 points
-
1 point
-
يعني جايا ولا متشفره ولا اصلها ايه ولا الملف مقفول بكلمة سرو انت ناسيه ؟؟؟؟؟؟؟؟ ياعم ربنا يبعتلك ويزرقك باذن الله متخفشي اخي محمد باذن الله هيطل علينا بطلته الـ(بهية) اظهر ياعم ابو البراء1 point
-
يبدو انها اختلطت عليك الجداول فقط الجداول الخدمية ( التي نجلب منها الاسماء ) لاحظ الخطأ الذي حصل : هنا 3 جداول : tbl_Vacations tbl_Vacations_3rda tbl_Vacations_Type فالجدول الخدمي هو الاخير بينما انت عدلت على الجميع في الجدولين الاولين الكود يجب ان يكون قابلا للتكرار والمفتاح يمكن ان تجعله ترقيما آليا وقس باقي الجداول على ذلك1 point
-
هجرب بقا انا بدل ما انت فاضحنى كده وحاططلى رقمى على الملاء ياغالى ههههههههههههههههههههههههه تسلم يا ابواسيل وجزاك الله كل خير1 point
-
في جدول الموظفين اجعل الحقل Emp_Code هو مفتاحا اساسيا فقط يجب ان يكون رقما فريدا لا يتكرر في بقية الجداول الخدمية : يمكنك حذف حقل الترقيم التلقائي ويكفي ان تجعل الكود مفتاحا للجدول1 point
-
حياك الله ابو مصطفى من خصائص النموذج - تنسيق - الاتجاه اذا كان الاتجاه من اليمين الى اليسار ظلل جميع محتويات النموذج ctrl+a واسحبها الى اقصى النموذج جهة اليمين بعد ذلك اسحب نهاية النموذج من اليمين الى اقصى اليسار .. اذا كان الاتجاه العكس ... اعمل العكس ==================== هنا شرح على مثالك قم بنقل مربعات النص في اقصى يسار النموذج form1 لديك الى الوسط ثم قم بسحب النموذج من اليمين الى اقصى اليسار بالتوفيق1 point
-
http://www.officena.net/ib/topic/68283-فك-حماية-ملف-الاكسيل-من-الخارج/1 point
-
السلام عليكم اخي العزيز الاخ تطرق الى فاتورة مصدر بياناتها جدول المواد ومن الطبيعي عندما تضيف اسم المادة في نموذج الفاتورة فانه يظهر اسم المادة في نموذج المادة هذا هو التوضيح1 point
-
طيب ممكن من فضلكم نوسع دائرة النقاش خطوة خطوة حتى لا يفقد طلاب العلم البسطاء تركيزهم وتتشتت افكارهم اولا على هذا الوضع للقاعدة المرفقة الجداول الخدمية والرئيسية قمت بعملها ماعدا جدول المواظبة وجدول الاستدعاءات للعمل فى الاوقات الغير رسمية تقريبا اريد من فضلكم ان تتسع صدوركم لى وتتحملوا جهلى وفضلا ليس امرا اتمنى تضييق دائرة النقاش حتى لا تتسع فى نقاش خطوه متقدمة فى أوقات غير وقت مناقشتها النقاط المطروحة للنقاش فى تلك الفترة هى الجداول ومسمياتها والحقول بداخلها - هل تلك الجداول باسمائها وكذلك الحقول داخل تلك الجداول بأسمائها كذلك عليها تعقيب - قمت بالغاء كل العلاقات بين الجداول التى قد قمت بوضعها فى المرفق الاول بناء على ما تفضلتم به ولكن لا أعلم كيف ستسير الأمور بدون هذه العلاقات ولكن لن استبق النقاش وأتطرق الى هذه الخطوة - هل هناك حقول لم اقم بإضافتها وكان من المفروض اضافتها - هل هناك حقول اضافتها لا فائدة منها فى الجداول - الجداول التى تنقص تلك القاعده حتى يكتمل النظام ليكون هناك تناغم حقيقى ما هى ؟ وما هى الحقول التى تنبغى ان تكون موجوده بها ؟! اعتذر اساتذتى ولكن عهدت منكم النزول الى مستوى اقل فهم طالب علم ولن تجدوا اقل من هذا المستوى عندى فتحملونى بحلم وصححوا لى خطأى بعلم جزاكم الله تعالى عنى وعن كل اخوانى خيرا Emp_Database.rar1 point
-
الله يسعد أوقاتكم جميعا زيادة الخير خير - بدون أن أتخطى - حدودي مع أساتذتي الكرام تحياتي لكم جميعا و دوما منك نستفيد حل بطريقة أخرى بالمعادلات - أرجو أن يكون المطلوب معادلة لحساب عدد كل جنسية مع اهمال التكرار من خلال استخدام Student ID.rar1 point
-
أخى الجموعى اتفضل شوف الرابط لعلك تستفيد منه http://www.officena.net/ib/topic/68265-شرح-مبسط-عن-النسخ-والقص-أو-الترحيل-بواسطة destination/ تقبل تحياتى وبالتوفيق1 point
-
حياك الله جرب يدويا تستورد الكائنات كل واحد على حده وليس بشكل جماعي .. جرب مع اكثر من كائن واذا وجدت حل آخر سأضعه لك هنا .. سوى ذلك ننتظر من له تجربه او خبرة حول الموضوع من خبراء واعضاء المنتدى الكرام . بالتوفيق1 point
-
أعتذر استاذي الكريم يمكن الحل بنفس الطريقة و لكن في حال كثرت أوراق العمل يمكن الحل بالأكواد ولكني لست خبيرا بها لك تحياتي1 point
-
اخي الكريم الحق نفسك والحق باقي ملفاتك من التشفير لا حول ولا قوة الا بالله http://www.officena.net/ib/topic/68116-حد-يلحقنى-جزاكم-الله-خيرا/?page=1 الموضوع دا نفس مشكلتك ياريت تلحق تعمل اسكان بانتي فيرس كويس وياريت اي حد عنده معلومات او طريقة للحل يتكرم ويساعدنا لان الموضوع دا كتر اوي والكل يعمل نسخ احتياطية في مكان بعيد عن الجهاز1 point
-
نعم هذا صحيح ، عندما نريد ان نرى اسم الدرجة وليس كود الدرجة ، وربط الجداول في الاستعلام سهل ولن تُخطئ او تحتار فيه ، ولكن ، خلينا نعمل مثال اشرح فيه السبب في طلبي ، وعلشان المسألة تكون واضحة: اسم الحقل: Level_ID ، نوع الحقل: رقم ، القيمة الحقيقة للحقل: 3 ، القيمة الظاهرة: الثانية-واحد (حيث اننا عن طريق Dlookup جعلناها القيمة الظاهرة في مربع التحرير والسرد ComboBox) : . والنتيجة التى سيراها المستخدم/المبرمج: . ولأنه لا يرى إلا هذا المسمى ، فالكود التالي سيكون خطأ (لأننا اعتبرنا ان الحقل نص وليس رقم): A = DCount("[Level_ID]", "tbl_Levels", "[Level_ID]='الثانية-واحد'") . والادهى من هذا ، انه لا توجد طريقة لدينا لمعرفة رقم هذه الدرجة ، إلا اذا جئنا الى الجدول ، ووضعناه بوضع التصميم ، ثم تعال واحسب الفوارز لمعرفة رقم الدرجة (والله يكون في عونك اذا المسميات فيها عربي وانجليزي مثل اللي في مثالي) جعفر1 point
-
عفوا ... الاخ ابو مصطفى هو صاحب المشكلة و ليس انا ...1 point
-
اخى الفاضل فى المرفق الملف المطلوب ومعه ملف وورد يجب قراءته بعناية شديدة قبل العمل على البرنامج CHEQUE.rar1 point
-
شرح ولا اروع أستاذي ابدعت أخي الصقر شرح مفصل ودقيق لك كل الاحترام والتقدير1 point
-
لا يا حلو انا مش عايزك تشكرنى انا عايزك تتعلم ازاى المعادله اتعملت ولما تتعلم ازاى المعادله انا اللى هشكرك وقتها واى استفسار انا موجود بأذن الله تقبل تحياتى1 point
-
وعليكم السلام ورحمه الله وبركاته حسب ما فهمت من سؤالك تحتاج الى تسجيل المادة من داخل النموذج دون الخروج والدخول الى نموذج المادة اذا كان ما فهمت صحيح استخدم الكود التالى فى حدث عن الضغط مرتين فى خانة كود الدواء مثلا DoCmd.OpenForm "form-items", , , , , acDialog, "GotoNew"1 point
-
السلام عليكم ورحمة الله وبركاته إخوتي الكرام ..أخي الحبيب الصقر.. إن غيابك عنا لم نعتد عليه كما هو في الفترة الأخيرة فأنتم في منتدانا الكريم كالخلايا النبيلة في جسم الإنسان لا يمكنه أن يؤدي وظائفه بفعالية دونها ..أقول هذا الكلام بحقك أنت وثلة طيبة من أساتذتنا الكرام "دماغ المنتدى " ..ولذلك أرجو أن تفكر مليا بعيون ترنو إلى تعاونكم واجتماعكم جميعا لترفعوا من شأننا نحو قمة الحضارة العلمية. أنتم لا تمثلون أنفسكم فحسب ..بل أنتم للكل لأنكم نذرتم أنفسكم لمجتمعاتكم بانضمامكم لهذا المنتدى. ولذلك فإنني أطلب منكم طلب الوالد الذي يريد لأبنائه أن يكونوا منارة يستضيء بها الكثيرون ...فهل سأجد آذانا صاغية ...ذلك رجائي بكم أبنائي البررة ..والسلام عليكم ورحمة الله وبركاته.1 point
-
أخي الكريم وائل لما لم ترفق ملف ؟ لما لم تضع الكود بين أقواس الكود؟! ما هو الخطأ الذي يظهر معك عند النقر على كلمة Debug؟ هل الاسم users الاسم البرمجي لورقة العمل المراد ربط الباسورد بها؟ هل جربت استخدام كلمة Sheets يليها قوس مفتوح ) ثم أقواس تنصيص " ثم اسم ورقة العمل users ثم إغلاق أقواس التنصيص " ثم إغلاق القوس ( ...؟ تقبل تحياتي1 point
-
أخي الحبيب ياسر العربي شوف سكة للملفات المحمية من برا دي .. جرب برامج الهيكس لربما تنجح في كشف أغوارها الموضوع صعب لما تكون الحماية على المصنف من برا ..لكن أي حماية لأوراق العمل أو محرر الأكواد فدي أمرها بسيط وميسور إن شاء الله تصل لحل يا عربي ..خليك متحدي! زي ما قدرت على الملفات التنفيذية اللي كنا بنقول هي الحماية الأكيدة لملفات الإكسيل فإن شاء الله تجد حلاً لها تقبل وافر تقديري واحترامي1 point
-
أخي الحبيب الغالي ومعلمي الكبير طارق محمود لكم يسعدني ويفرحني ويبهج قلبي أن أرى مشاركة لك .. لا حرمنا الله من وجودك بيننا أبداً .. وعوداً حميداً ويا ريت متطولش علينا ملف رائع وشرح أروع تقبل وافر حبي وتقديري واحترامي1 point
-
السلام عليكم تفضل أخي الملف وبه ورقة للشرح نقل التركيز.rar عذرا أخي سليم ، لم أقرأ ردك1 point
-
استاذ محمد الله يقويك ان شاء الله بالإضافة الى ملاحظات الاستاذ ابو خليل الله يوفقه ....... انا افضل استخدام مربعات نص غير منضمه مع جمل sql في حال الإضافة وعدم فتح الجدول مباشرة للإضافة وهذا مجرد رأي وملاحظة وقابلة للنقاش ... وبالتوفيق استاذ محمد1 point
-
القي نظره هنا http://arabteam2000-forum.com/index.php?/topic/293030-%D9%83%D9%8A%D9%81-%D9%8A%D9%85%D9%83%D9%86-%D9%85%D9%86%D8%B9-%D8%A5%D8%B6%D8%A7%D9%81%D8%A9-%D8%B3%D8%AC%D9%84-%D8%AC%D8%AF%D9%8A%D8%AF-%D8%AA%D9%84%D9%82%D8%A7%D8%A6%D9%8A-%D9%81%D9%8A-%D8%A7%D9%84%D9%86%D9%85%D9%88%D8%B0%D8%AC/#comment-1397314 ولي عودة تحياتي1 point
-
يمكن استخدام طريقة تغيير خاصية قابل للتعديل وبالقيمة =نعم ! مع افتراض ان الخاصية تاخذ القيمة لا عند تحميل النموذج فعند تحميل النموذج يكون الحدث وعند التحميل للنموذج Me.AllowEdits = False وعند الضغط على الزر يكون الحدث Me.AllowEdits = true وهنا يظهر استفسار : ماذا بعد التعديل في النموذج هل يتم عودة عدم السماح بالتعديل ام يظل التعديل متاح ؟ فاذا يعود الاقفال اكتب الحدث التالي وعند بعد التحديث للنموذج Me.AllowEdits = False هنا اصبح السناريو : عند تحميل النموذج اول مرة غير متاح .... عند النقر على الزر متاح ... بعد التعديل يعود عدم السماح بالتوفيق1 point
-
سادساً :- التعامل مع العناصر الموجوده داخل الــ Frame بطرق احترافيه فى البدايه يبدو ان العنوان غريب وغير مفهوم خليك معايا خطوه خطوه هتفم يعنى ايه الكلام ده شاهد الصوره التاليه دا فورم فى مرحلة التصميم وزى ما انتم شايفين يوجد زر اخضر اسمه Test وهو عباره عن Label ويوجد ايضا عدد 2 تكست بوكس وعدد 2 كمبو بوكس المطلوب انا عايز اعمل كود عند الضغط على الزر الاخضر اثناء عمل الفورم يقوم الكود بعمل اختبار للعناصراللى من النوع تكست بوكس هل هى فارغه ام بها بيانات اذا كانت فارغه يعطينى رساله باسم التكست وكمان يجعل لون التكست احمر ازاى ننفذ الكلام ده اولا هو عايز الكود يتم تنفيذه عند الضغط على الزر الاخضر حلو اوى طيب الزر الاخضر ده عباره عن ايه ؟ شوف الصوره هتلاقى ان الخاصيه Name هى Label1 اذن الكود هيكون كالتالى Private Sub Label1_Click() 'مكان وضع الكود المراد تنفيذه End Sub ما هو الكود المراد تنفيذه ؟ هو اختبار العناصر هل هى من النوع تكست بوكس أم لا واذا كانت من النوع تكست بوكس هل هى بها بيانات ام لا واذا تبين ان العنصر من نوع التكست بوكس ولا يوجد به بيانات اظهرلى رساله باسم العنصر وكمان اجعل العنصر لونه احمر أول شئ علشان اختبر كل العناصر اللى على الفورم واشوف نوعها اذن لازم اعرف متغير من نوع Control لان انا هتعامل مع العناصر Dim a As Control هنا سميت المتغير اسم a ( وطبعا يمكن تسمية اى اسم كيفا شئت ) وقلت اى المتغير a ده عباره عن عنصر تحكم ( قد يكون لليبل او تكست بوكس او كمبوبوكس او ليست بوكس او فريم او تشيك بوكس وغيرها من العناصر ) فعلشان الف على كل العناصر اللى موجوده على الفورم يبقى لازم الحلقه التكراريه For Each Private Sub Label1_Click() Dim a As Control For Each a In Me.Controls ' مكان اختبار العنصر اذا كان من النوع تكست بوكس وايضا هل هو فارغ من البيانات Next a End Sub عملت حلقه For Each للمتغير a وقلت ان a ده هو عباره عن عنصر تحكم موجود على الفورم Me.Controls Me هنا عايده على عناصر الفورم ازاى بقى اعمل اختبار للعناصر هل هى من النوع تكست بوكس و هل هى بها بيانات ام لا اذن هستخدم if Then If TypeOf a Is msForms.TextBox And a = "" Then End If if تعنى لو الاختبار الاول هل العنصر من نوع التكست بوكس TypeOf a Is msForms.TextBox TypeOf تعنى نوع الــ a هو عنصر التحكم اللى بيتغير كل مره مع الحلقه For Each is يكون msForms.TextBox تكست بوكس الاختبار الثانى a = "" and تعنى ( و ) لعمل شرط ثانى a = "" عنصر التحكم فارغ Then تعنى نفذ التالى ( وطبعا قفلنا if بــ End if ) طيب لما الكود يختبر نوع العنصر ويلاقيه تكست بوكس وكمان يلاقيه فارغ ماذا ينفذ يجعل التكست بوكس لون الخلفيه احمر ويظهر لى رساله باسم العنصر If TypeOf a Is msForms.TextBox And a = "" Then a.BackColor = 10200 MsgBox "فارغ يرجى تعبئة التكست" & a.Name End If شاهد الكود بشكله النهائى Private Sub Label1_Click() Dim a As Control For Each a In Me.Controls If TypeOf a Is msForms.TextBox And a = "" Then a.BackColor = 10200 MsgBox "فارغ يرجى تعبئة التكست" & a.Name End If Next a End Sub هعملك مشهد تمثيلى لعمل الكود جوا دراما يعنى جايز الاقى فيكم مخرج يكتشفنى عند عمل الكود فى اول سطر هيخزن فى ذاكرته ان المتغير a هو عنصر تحكم ثم ياتى للسطر الثانى وهو For Each a In Me.Controls الحلقه هتجعل ان a هى Label1 هيروح للسطر اللى بعده يعمل اختبار بالــ if فهيلاقى ان a اللى هى دلوقتى ( Label1) مش من النوع تكست بوكس اذن متحققش الشرط الاول فهينتقل الى End if بدون ما ينفذ اى شئ ثم ينتقل الى Next وتعنى ارجع الى الحلقه For Each مره تانية لما يرجع للحلقه سيكون a فى هذه المره هى TextBox1 ثم ينتقل الى السطر التالى اختبار if طبعا هيختبر نوع TextBox1 هيلاقيه بالفعل من النوع TextBox تحقق اول شرط طيب هيشوف الشرط التانى هل التكست فارغ ام به بيانات اذا كان فارغ هيجعل لون خلفيته حمراء ويعطنى رساله باسمه ثم ينتقل الى Next وتعنى ارجع الى الحلقه For Each مره تانية لما يرجع للحلقه سيكون a فى هذه المره هى ComboBox1 ثم ينتقل الى السطر التالى اختبار if طبعا هيختبر نوع ComboBox1 هيلاقيه مش من النوع ComboBox فلم يتحقق الشرط الاول فهينتقل الى End if بدون ما ينفذ اى شئ ثم ينتقل الى Next وتعنى ارجع الى الحلقه For Each مره تانية وهكذا الى ان تنتهى الحلقه بعد ما تجعل a بكل العناصر اللى على الفورم وينتهى الكود شاهد هذه الصوره عند عمل الفورم والضغط على الزر الاخضر دى كانت مقدمه للمثال التالى وهو الاهم واللى اكيد هيقابلك لو انت هتصمم برامج اكيد هيقابلك المثال التالى مثال 2 :- شاهد الصوره التالية طبعا علشان اعمل كود فى حدث الليبل " الحفظ " هيكون الاعلان عن الكود كالتالى Private Sub Label1_Click() 'اولا اختبار صحة الادخالات 'ثانيا ترحيل البيانات التى تم تعبئتها من قبل المستخدم الى الشيت End Sub انا موضوعى اليوم هو اولا اختبار صحة البيانات المدخله أما الجزء الخاص بترحيل البيانات الى الشيت مش موضوعى اليوم سنتناوله لاحقا باذن الله اولا اختبار صحة البيانات المدخله لو رجعت للصوره السابقه هتلاقى ان المطلوب اختبار كل عناصر التكست بوكس هل تم ملئ الدرجات بها ام لا وزى ما عرفنا قبل كدا ممكن تكون كالتالى Private Sub Label1_Click() If TextBox1 = "" Then TextBox1 .BackColor = 10200 End If If TextBox2 = "" Then TextBox2 .BackColor = 10200 End If End Sub يعنى هختبر كل عنصر بالشكل ده طبعا مستحيل طيب هتعمل ايه لو كان عندك مثلا 100 تكست بوكس او اكتر ؟؟؟؟؟؟ طبعا لو عملت كدا محتاج 100 صفحه علشان تكتب الكود مش منطق طبعا اذن لازم من حل احترافى شاهد الكود بشكل احترافى فى بضعه اسطر وبعدين نشرحه Private Sub Label1_Click() Dim a As Control For Each a In Frame1.Controls If TypeOf a Is msForms.TextBox And a = "" Then a.BackColor = 10200 End If If TypeOf a Is msForms.ComboBox Then If a.MatchFound = False Then a.BackColor = 10200 End If End If Next a 'ثانيا كود ترحيل البيانات التى تم تعبئتها من قبل المستخدم الى الشيت End Sub الكود فى المثال السابق كانت حلقة For Each عباره عن For Each a In Me.Controls ( هنا كان المتغير a يمثل كل العناصر على الفورم لذالك استخدمت Me.Controls وقلت ان Me عائده على الفورم النشط لكن فى الكود الحالى انا عايز اتعامل مع العناصر اللى داخل الــ Frame1 فقط فتم كتابة الحلقه كالتالى عباره عن For Each a In Frame1.Controls فهنا a هتكون كل عنصر من العناصر اللى داخل الفريم فقط واحد صاحى معايا هيلاحظ ان لما استخدمت If لاختبار ان العنصر من النوع تكست بوكس تم استخدام شرط التحقق من نوع العنصر انه تكست بوكس وشرط ان العنصر فارغ فى سطر واحد من خلال And شاهد الكود If TypeOf a Is msForms.TextBox And a = "" Then a.BackColor = 10200 End If ولكن عند استخدام if لاختبار ان العنصر من النوع كمبوبوكس وان الاختيار تم من القائمه تم استخدام if لاختبار شرط التحقق من نوع العنصر اذا كان كمبوبوكس يتم تنفيذ if اخرى وكتابة الشرط الثانى ان الاختيار تم من القائمه شاهد الكود If TypeOf a Is msForms.ComboBox Then If a.MatchFound = False Then a.BackColor = 10200 End If End If فى حد عنده تفسير لذالك ؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟ ليه مكتبناش اختبار ان نوع العنصر كمبوبوكس وان الاختيار تم من القائمة فى سطر واحد من خلال And مثل التكست بوكس يعنى يكون كدا If TypeOf a Is msForms.ComboBox And a.MatchFound = False Then a.BackColor = 10200 End If هقولك انا ما هو السبب الحلقه For Each لما تشتغل هيكون اول مره a كل مره تمثل عنصر من عناصر التحكم داخل الفريم فهيكون أما ليبل أو تكست بوكس أو كمبوبوكس كما هو بمثالنا فى الصوره السابقه موضوع الشرح لما تشتغل If الاولى If TypeOf a Is msForms.TextBox And a = "" Then a.BackColor = 10200 End If فعندما يكون a عباره عن Label " " = a " " =Label1 فلا يوجد مشكله لان Label ممكن = فارغ -------------------------------------- فعندما يكون a عباره عن TextBox " " = a " " =TextBox1 فلا يوجد مشكله لان TextBoxممكن = فارغ -------------------------------------- فعندما يكون a عباره عن ComboBox " " = a " " =ComboBox1 فلا يوجد مشكله لان ComboBox ممكن = فارغ -------------------------------------- لما تشتغل If الثانيه If TypeOf a Is msForms.ComboBox And a.MatchFound = False Then a.BackColor = 10200 End If فعندما يكون a عباره عن Label a.MatchFound = False Label.MatchFound = False فهنا يوجد مشكله لان Label ليس من خواصه MatchFound وكذالك TextBox لان MatchFound هى من خواص ComboBox فقط وهى لعمل اختبار هل الاختيار تم من القائمه ام لا لذالك مينفعش نعمل الكود بالشكل ده هيحدث Error ولتجنب Error لازم يكون الكود بالشكل التالى If TypeOf a Is msForms.ComboBox Then If a.MatchFound = False Then a.BackColor = 10200 End If End If يعنى اختبر العنصر هل هو ComboBox أولا أم لا اذا كان من النوع ComboBox اعمل اختبار عليه وهو هل تم الاختيار من القائمه أم لا واذا كان العنصر من النوع Label أو TextBox متعملش اختبار MatchFound ارجوا ان يكون الشرح واضح هو بس محتاج تركيز شويه شاهد الكود مره تانية بشكله النهائى كالتالى Private Sub Label1_Click() Dim a As Control For Each a In Frame1.Controls If TypeOf a Is msForms.TextBox And a = "" Then a.BackColor = 10200 End If If TypeOf a Is msForms.ComboBox Then If a.MatchFound = False Then a.BackColor = 10200 End If End If Next a 'ثانيا كود ترحيل البيانات التى تم تعبئتها من قبل المستخدم الى الشيت End Sub شاهد الصوره التاليه عند تشغل الفورم والضغط على زر الحفظ طبعا انت ممكن تغير فى الكود بدل ما ينفذ بجعل الخلفيه لونها احمر a.BackColor = 10200 ممكن تغير اى شئ تريد تنفيذه يعنى مثلا يعطى للمستخدم رساله باسم العنصر اللى فيه خطأ زى كدا Private Sub Label1_Click() Dim a As Control For Each a In Frame1.Controls If TypeOf a Is msForms.TextBox And a = "" Then MsgBox a.Name & " برجاء تعبئة بيانات" End If If TypeOf a Is msForms.ComboBox Then If a.MatchFound = False Then MsgBox a.Name & " برجاء تعبئة بيانات" End If End If Next a 'ثانيا كود ترحيل البيانات التى تم تعبئتها من قبل المستخدم الى الشيت End Sub شاهد الصوره التاليه عند تشغل الفورم والضغط على زر الحفظ ------------------------------------------------------------------------------------------------------------------------------------ الى لقاء اخر من حلقات سلسلة علمنى كيف اصطاد انتظرونا تقبلوا تحياتى1 point