اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

jjafferr

أوفيسنا
  • Posts

    10020
  • تاريخ الانضمام

  • تاريخ اخر زياره

  • Days Won

    408

كل منشورات العضو jjafferr

  1. شوي شوي علينا أخي رضا ، بعدين بصير مثل البالونه ، انت تنفخ وتنفخ ،و انا راسي يكبر ويكبر ، وبعدين إبرة صغيرة تضربها في البالونه ، واعرف قدري الحقيقي جعفر
  2. وعليكم السلام يعني عند اختيارك اكثر من اسم ، هل تريدهم جميعا مظللين ، ام آخر اسم تم اختياره فقط؟ جعفر
  3. تفضل يا سيدي نعمل ماكرو يشتغل عند تشغيل البرنامج ، ويجب ان يكون اسمه AutoExec ، هذا الماكرو نطلب منه تشغيل الوحدة النمطية Login_Form: . الوحدة النمطية Login_Form ، تقرأ قيمة الحقل Shall_I_Open من الجدول tbl_Shall ، فاذا كانت قيمته =-1 (True) ، فانه سيفتح النموذج frm_Log-n ، وإلا فانه سيفتح النموذج frm_Home : . عند اغلاق النموذج frm_Login ، فانه يغير قيمة الحقل Shall_I_Open من الجدول tbl_Shall ، الى القيمه =0 (False) . جعفر 314.form.accdb.zip
  4. قبل ان تستطيع الضغط على الزر الذي في الشريط الاصفر ، يجب عليك ان تضغط على رز Stop all Macro السبب في ظهور هذه الرسالة ، هو تشغيلك برنامج اكسس من مجلد غير موثوق به (للأكسس 2007 فما فوق) ، فالاكسس 2010 فما فما فوق ، يمكنك القيام بما قاله الاخ كرار ، ولن تظهر لك الرسالة مرة ثانية ، بينما للأكسس 2007 ، فيجب عليك ان تذهب الى اعدادات الاكسس ، وتختار مجلد موثوق به ، وثم تشغل برامج الاكسس من ذلك المجلد ، ولن تظهر لك هذه الرسالة مرة ثانية جعفر
  5. وعليكم السلام انت تريد هذا النموذج ان يفتح مرة واحدة ، وبعدها لا يفتح؟ اعمل جدول خاص لهذا الغرض ، واجعل فيه خانة واحدة ، Shall_I_Open (مثلا)واجعلها نعم/لا ، 1. كلما اردت تشغيل هذا النموذج (عند تشغيل البرنامج مثلا) ، فيجب ان تقرأ القيمة من الجدول ، فاذا كانت = نعم ، فيسمح لك الكود بالدخول في النموذج ، واذا كانت = لا ، فلا يسمح لك بالدخول ويفتح لك نموذج آخر انت تختاره ، 2. عند حدث اغلاق النموذج ، غيّر القيمة الى لا (بواسطة استعلام تحديث مثلا) ، جعفر
  6. السلام عليكم أخي بسام بكرة ان شاء الله اعطيك مثال عن ملاحظتي في الموضوع الاخر جعفر
  7. سؤال الاخ احمد كان كلمات متقاطعة ، فحاولت احلها من الكود ولما كود ADO ما وصلني مكان ، التجأت الى DAO بس ياريت تكمل الكود ، لأني اعتقد بأن الاخ أحمد عنده اسئلة لاحقه لسؤاله الاصلي ، وكودك حيكون اول خطوة للجواب التالي جعفر
  8. تفضل أخي أحمد ، الكود بالشرح: Private Sub cmd_another_DB_Click() 'نشير الى المرجع الصحيح 'فعندنا مرجع 'ADO ومرجع DAO 'وهنا سنستخدم المرجع الاخير ، DAO Dim rst As dao.Recordset Dim db As dao.Database 'اختار قاعدة البيانات ، وفي حالتنا فهي خارجية Set db = OpenDatabase(Application.CurrentProject.Path & "\rr.mdb") 'الآن نربط الكود بقاعدة البيانات اعلاه ، بالجدول المحدد 'ونستطيع ان نعطي امر للتصفية وامر للفرز كذلك Set rst = db.OpenRecordset("Select * From emplyee") 'لكي يتم قراءة الجدول اعلاه بطريقة كاملة ، يجب ذهاب المؤشر الى آخر الجدول ثم الرجوع الى اوله rst.MoveLast: rst.MoveFirst 'عدد سجلات الجدول RC = rst.RecordCount 'إقرأ السجلات من اول سجل الى آخر سجل For i = 1 To RC 'اطبع قيمة السجلsatff_name MsgBox rst!satff_name 'انتقل الى السجل التالي rst.MoveNext 'واصل اللف حول السجلات Next i 'اغلق قاعدة لبيانات ، وازلها من الذاكرة rst.Close: Set rst = Nothing End Sub جعفر
  9. انت لما تحذف بيانات من جدول الطالب ، فتلقائيا سجلات الطالب في جدول الدرجة ينحذف. وين المشكلة؟ لوسمحت تعطيني اسماء الجداول جعفر
  10. السلام عليكم وهذه طريقة اخرى: Private Sub cmd_another_DB_Click() Dim rst As dao.Recordset Dim db As dao.Database Set db = OpenDatabase(Application.CurrentProject.Path & "\rr.mdb") Set rst = db.OpenRecordset("Select * From emplyee") rst.MoveLast: rst.MoveFirst RC = rst.RecordCount For i = 1 To RC MsgBox rst!satff_name rst.MoveNext Next i rst.Close: Set rst = Nothing End Sub جعفر
  11. شكرا لك أخي محمد أخي بسام نعم ممكن ، ولكن في الخلفية ، سيكون الحقلين يستخدمون نفس استعلام البحث!! وبالطريقة التي عملتها انا ، يمكنك ان تبحث اولا عن الكلمات التي في "موضوع الخطاب" ثم تترك مسافة ، ثم تبحث في كلمات الحقل "كلمات ارشادية" جعفر
  12. السلام عليكم ورحمة الله وبركاته قمت بالعمل لإثبات انه ممكن ، ولكن الشئ المهم ما قاله أخي أبو خليل: . لهذا ، هذه النتيجة: . وهذا الكود الذي يقوم بالعمل كاملا: 1. استعلام الحاق للجدول table1 ، 2. استعلام تحديث للجدول table2 ، 3. استعلام تحديث للجدول table3 ، Private Sub cmd_append_update_Click() Dim rstFrom As DAO.Recordset Dim rstTo As DAO.Recordset Set rstTo = CurrentDb.OpenRecordset("Select * From table4") 'table1, Append Set rstFrom = CurrentDb.OpenRecordset("Select * From table1") rstFrom.MoveLast: rstFrom.MoveFirst RC = rstFrom.RecordCount For i = 1 To RC rstTo.AddNew rstTo!a = rstFrom!a rstTo.Update rstFrom.MoveNext Next i 'table2, Update rstTo.MoveFirst Set rstFrom = CurrentDb.OpenRecordset("Select * From table2") rstFrom.MoveLast: rstFrom.MoveFirst RC = rstFrom.RecordCount For i = 1 To RC rstTo.Edit rstTo!b = rstFrom!b rstTo.Update rstFrom.MoveNext rstTo.MoveNext Next i 'table3, Update rstTo.MoveFirst Set rstFrom = CurrentDb.OpenRecordset("Select * From table3") rstFrom.MoveLast: rstFrom.MoveFirst RC = rstFrom.RecordCount For i = 1 To RC rstTo.Edit rstTo!c = rstFrom!c rstTo.Update rstFrom.MoveNext rstTo.MoveNext Next i MsgBox "Done" End Sub جعفر mo_esam_sample.zip
  13. السلام عليكم شكرا لك على هذه الملاحظة ، واللي كان لها الفضل في ايجاد حل سهل: . عليه تم اضافة 2000 الى السنوات ، وكان الله رؤوف رحيم . جعفر 310.N2.mdb.zip
  14. لا يمكن حذف البيانات من جميع الجداول باستعمال استعلام واحد ، لذا يجب عمل استعلام حذف مستقل بكل جدول ، وفي الكود تقوم بتشغيل الاستعلامات واحدة خلف الاخرى ، هكذا: لا تعرض رسالة حذف البيانات التحذيرية docmd.setwarnings false الآن نشغل جميع استعلامات الحذف docmd.openquery "qry_1" docmd.openquery "qry_2" docmd.openquery "qry_3" الآن اعرض جميع الرسائل التحذيرية docmd.setwarnings true . . انا اعطيتك الطريقة لعمل هذا الاستعلام للحقل تاريخ الميلاد ، فكل اللي عليك عمله هو تغيير الحقل الى "تاريخ تقديم المادة" مع الحفاظ على المعيار بين التاريخين. جعفر
  15. . لما قلت لي: . فهمت منها انك فهمتها وطبقتها!! وإلا ، كان بإمكانك ان تستوضح أكثر!! على العموم ، مثل ما قلت سابقا ، استعمل طريقة أخي محمود ، وياريت انك تسجل اعجابك بمشاركته . لا الفكرة جدا بسيطة ، فبدل ان تعمل alt+shift يدويا ، يقوم الكود بعمله جعفر
  16. السلام عليكم أخي بسام لأن سؤالك توسع ، فرأيت ان اعمل موضوع منفصل لتعم الفائدة رجاء مراجعة الرابط التالي: http://www.officena.net/ib/topic/65856-هدية-البحث-عن-اي-جزء-من-الكلمة-،-في-اي-عدد-من-الحقول/ جعفر
  17. السلام عليكم ورحمة الله وبركاته الموضوع هذا بدأ بسؤال الرابط التالي: http://www.officena.net/ib/topic/65783-البحث-عن-اي-جزء-من-الكلمة-عنوان-معدل/ ولكن لأني غيرت الكود وجعلته يبحث في اي عدد من الحقول في السجل ، لذا رأيت ان اجعل له موضوعا مستقلا يمكنك البحث عن اي جزء من الكلمة ، واذا اردت البحث عن كلمة اخرى في السجل او جزء منها ، فما عليك الا ان تضع (مسافة او / او *) بين الكلمات ، فسيعتبرها البرنامج على انها كلمة اخرى يجب البحث عنها. الشئ المهم في الكود هو طريقة إضافة حقول جديدة للبحث فيها: هذا اول حقل يتم البحث فيه fld = "[كلمات ارشادية]" لما نريد ان نضيف حقول إضافية للبحث فيها ، يجب ان يكون الكود كالتالي fld = fld & " & ' ' & " & "[موضوع الخطاب]" fld = fld & " & ' ' & " & "[my other field]" وكل ما عليك الآن هو ان تطبع وترى نتيجة بحثك: . ملاحظة مهمة: اذا كان برنامجك على الشبكة ، فلا تضع الكود على "حدث التغيير" (معناه ، كلما اضفت/حذفت حرف ، فارجع الى الجدول وخذ البيانات منه) ، لأنه سيجعل البرنامج جدا بطئ ، وانما استخدم زر البحث. جعفر 309.Search_as_you_Type_Multiple_Fields_jj.mdb.zip
  18. وعليكم السلام أخي محمود في الواقع اذا كان قصد الاخ محمد سعيد ان يغير لغة الكمبيوتر ، ويحتفظ بهذا التغيير لكل البرنامج (وليس للنموذج الذي هو عليه الان فقط) ،فطريقتك هي الاسهل والافضل ، (مع مراعاة إضافة كود محاذاة الحقل لليمين او اليسار عند الكتابة) اما اذا كان القصد للنموذج الحالي فقط ، فكذلك طريقة الاخ محمود الافضل ، مع مراعاة تغيير اللغة عند الخروج من النموذج الحالي ، (مع مراعاة إضافة كود محاذاة الحقل لليمين او اليسار عند الكتابة) طريقتي لا تلعب/تغير إعدادات الكمبيوتر ، وانما تستغل الاعدادات الموجودة في نماذج/حقول الاكسس جعفر
×
×
  • اضف...

Important Information