-
Posts
9910 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
404
نوع المحتوي
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
كل منشورات العضو jjafferr
-
مراجع ومصادر لشرح الاستعلامات الفرعية بتوسع
jjafferr replied to عبد الفتاح كيرة's topic in قسم الأكسيس Access
صدقني انا بطيئ في ادخال البيانات ، فيا ريت ترفق لنا هذه البيانات 🙂 يا اخي ، قول لي من بياناتك شو اللي تريد اظهاره بالاستعلام ، وما فهمت اي سجل تريد جعفر -
مطلوب توزيع السباحين طبقاً للتواريخ المحددة
jjafferr replied to محمد سلامة's topic in قسم الأكسيس Access
السلام عليكم اخي محمد 🙂 صار لي يومين اضرب اخماس في اسداس ، وما عرفت المطلوب رجاء تشرح لي بالتفصيل لو سمحت 🙂 جعفر -
شكرا جزيلا اخي صالح 🙂 لطالما ظل هذا الموضوع غامض ، وهو تحت اعيننا 🙂 جعفر
-
وعليكم السلام اخي ابراهيم 🙂 اهلا وسهلا بك في المنتدى 🙂 رجاء عدم الرد في المواضيع القديمة ، فقد لا تحصل على رد ، وانما اعمل موضوع جديد لسؤالك ، وارفق رابط الموضوع لطرح طلبك 🙂 ردا على سؤالك ، تفضل هذا الرابط : جعفر
-
مراجع ومصادر لشرح الاستعلامات الفرعية بتوسع
jjafferr replied to عبد الفتاح كيرة's topic in قسم الأكسيس Access
اعطنا مثال لوسمحت ، وياريت شوية بيانات -
مراجع ومصادر لشرح الاستعلامات الفرعية بتوسع
jjafferr replied to عبد الفتاح كيرة's topic in قسم الأكسيس Access
الحمدلله 🙂 وشكرا على المعلومة 🙂 جعفر -
مراجع ومصادر لشرح الاستعلامات الفرعية بتوسع
jjafferr replied to عبد الفتاح كيرة's topic in قسم الأكسيس Access
عفوا ، انا لم افهم شيء !! -
مطلوب توزيع السباحين طبقاً للتواريخ المحددة
jjafferr replied to محمد سلامة's topic in قسم الأكسيس Access
وعليكم السلام اخوي محمد 🙂 اذا ممكن ومن بيانات المرفق اعلاه ، ان تعمل لنا الجواب في ملف اكسل او وورد ، مثال او مثالين لوسمحت ، حتى يتضح المطلوب 🙂 جعفر -
فتح أكثر من قاعدة بيانات من نموذج واحد فقط ..
jjafferr replied to عفرنس's topic in قسم الأكسيس Access
اسمحوا لي ان اشرح فائدة الطريقة اللي اشرت لها انا 🙂 الفائدة هي محاكاة البرنامج الاخر ، وارسال بيانات له ، واستيراد بيانات منه ، وهذا لا يقتصر على قاعدة البيانات التي فتحت البرنامج الآخر ، وانما يعتمد على اي عدد من قواعد البيانات التي فتحتها عن طريق المتغير appAccess و appAccess2 و ... وبعد اذن اخي ابو البشر ، فاستخدمت مرفقه ، وبتعديل بسيط على البرنامج Sub بحيث النموذج mark2 لا يُفتح تلقائيا ، واضفت له زر : الكود التالي : يفتح قاعدة البيانات Sub ، 1. يرسل القيمة "c:\abc\abc" الى الحقل txtPath ، 2. ويأخذ المسمى الموجود في حقل التسمية 7 ، ويضعه في برنامجنا : Private Sub cmd_View_Kids_info_Click() On Error GoTo err_cmd_View_Kids_info_Click Dim appAccess As Object Dim DB_Path As String Dim myWhere As String 'if the Remote Application/Form is open, close it first appAccess.DoCmd.Quit 'now open the Form for the new Employee_ID Set appAccess = CreateObject("Access.Application") DB_Path = Application.CurrentProject.Path & "\mark2.mdb" appAccess.OpenCurrentDatabase (DB_Path) appAccess.DoCmd.OpenForm "Mark" appAccess.Visible = True With appAccess.Forms!Mark .txtPath = "c:\abc\abc" Me.lbl2.Caption = .[تسمية7].Caption End With appAccess.UserControl = True 'Set appAccess = Nothing Exit_cmd_View_Kids_info_Click: Exit Sub err_cmd_View_Kids_info_Click: If Err.Number = 91 Or Err.Number = 462 Then 'the application is NOT open, ignore the error Resume Next Else MsgBox Err.Number & vbCrLf & Err.Description End If End Sub جعفر fayz.zip -
مراجع ومصادر لشرح الاستعلامات الفرعية بتوسع
jjafferr replied to عبد الفتاح كيرة's topic in قسم الأكسيس Access
استعمل TOP 3 بدلا عن TOP 1 جعفر -
فتح أكثر من قاعدة بيانات من نموذج واحد فقط ..
jjafferr replied to عفرنس's topic in قسم الأكسيس Access
وعليكم السلام 🙂 نعم يمكن ، وتفتح نموذج معين ، وتعمل له تصفية ، وللقراءة فقط 🙂 يعني تعمل فيه اللي تريد 🙂 اقتطعت هذا الكود من احد برامجي : Private Sub cmd_View_Kids_info_Click() On Error GoTo err_cmd_View_Kids_info_Click Dim appAccess As Object Dim DB_Path As String Dim myWhere As String 'if the Remote Application/Form is open, close it first appAccess.DoCmd.Quit 'now open the Form for the new Employee_ID Set appAccess = CreateObject("Access.Application") DB_Path = "\\Managing_1\h\Personal\FE\Personal_FE.accdb" appAccess.OpenCurrentDatabase (DB_Path) myWhere = "[Full_Name]='" & Me.frm_1_All!Full_Name & "'" myWhere = myWhere & " And [Relation]<>'زوجة'" myWhere = myWhere & " And [Relation]<>'زوج'" appAccess.DoCmd.OpenForm "sfrm_Family", , , myWhere, acFormReadOnly appAccess.Visible = True appAccess.UserControl = True 'Set appAccess = Nothing Exit_cmd_View_Kids_info_Click: Exit Sub err_cmd_View_Kids_info_Click: If Err.Number = 91 Or Err.Number = 462 Then 'the application is NOT open, ignore the error Resume Next Else MsgBox Err.Number & vbCrLf & Err.Description End If End Sub جعفر -
مراجع ومصادر لشرح الاستعلامات الفرعية بتوسع
jjafferr replied to عبد الفتاح كيرة's topic in قسم الأكسيس Access
السلام عليكم 🙂 اليك هذا المرفق ، فيه مثالين: المثال الاول: عندنا جدولين ، tbl_Seq و tbl_New_Seq ، فيهم نفس البيانات ، نريد نأخذ اكبر قيمة من الحقل Seq في tbl_Seq ، ثم نستخدم هذه القيمة ، وندخل بقية البيانات في الجدول tbl_New_Seq ، المثال الثاني: نفس المثال الاول ، ولكن العمل على جدول واحد فقط ، tbl_Sections . المشكلة في لما تستعمل استعلام المجاميع ، والامر Max للحقل Seq ، لتحصل على اعلى قيمة ، ثم تربطه بالجدول الآخر ، فيصبح استعلامك (نموذجك) غير قابل للتعديل ، بينما اذا استعملنا نفس استعلام المجاميع اعلاه ، بالامر Max للحقل Seq ، ولكن استعملناه كإستعلام فرعي ، فيصبح الاستعلام (النموذج) قابل للتعديل 🙂 اترك لك المجال تفحص المثال الاول ونتائجه ، وهنا اوضح عمل المثال الثاني: فنرى اني عملت استعلام فرعي للقيمة Seq : . ونتيجة الاستعلام ، يمكن تعديلها ، للحقل New_Section : . وللتجربة ، اخذ الاستعلام الفرعي اعلاه ، وضعه في استعلام مستقل ، ثم اربط الاستعلام بالجدول ، فلن تحصل على نتيجة صحيحة !! جعفر 1167.SubQuery.mdb.zip -
أريد طريقة عمل فرز لأسماء المتقدمين على دورات تدريبية "آلية"
jjafferr replied to ابوآمنة's topic in قسم الأكسيس Access
السلام عليكم اخي صالح 🙂 شو اللي جاب هذا الموضوع على بالك بعد حوالي سنتين جعفر -
السلام عليكم 🙂 هناك الكثير من الميزات/الاوامر التي يعطينا برنامج الاكسس ، والتي يمكن ان نعمل لها بديل ، ولكن يكون هناك فرق في سرعة تنفيذ كودنا مقارنة مع الكود الاصل من الاكسس !! مثل القائمة المختصرة التي تظهر لنا بالنقر على زر الفأرة الايمن ، والتي بها يمكننا ان نستغني عن الكثير الاوامر ، مثل الفرز والتصفية بأنواعه ، ولكن وللأسف الشديد ، فأنا ارى ان 99.99% من البرامج ، يتم حذف هذه القائمة وعدم تفعيلها ، والسبب ان المستخدم يستطيع ان يدخل في تصميم النموذج من خلال هذه الاوامر(في الدائرة الحمراء) : و . ويضطر المبرمج ان يعوض بقية الاوامر في القائمة ، بمجموعة من الازرار ، او بطرق مختلفة !! ----------------------------------------------------------------------------------------------- الاكسس يسمح لنا ان نعمل قوائم مختصرة Shortcut Menu والتابعة لمجموعة CommandBars ، حسب احتياجنا ، ونختار ما نضعه فيها 🙂 هناك 3 انواع من هذه القوائم : الثابته ، والمؤقته ، والمؤقته التي تحتاج الى كود. الثابته: وهي التي عندما نعملها ، تصبح مستقله عن الكود ، وتُحفظ وتبقى في قاعدة البيانات بعد إغلاقها ، ويمكننا ان نستوردها في قاعدة بيانات اخرى عندما نستورد احد/جميع كائنات قاعدة البيانات الآخرى ، بإستخدام : . ونختارها في النموذج : . او التقرير : . هذا مثال لعمل الكود الاساس لعمل قائمة قطع/نسخ/لصق : Option Compare Database Option Explicit Dim cmb As Object Dim cmbCtrl As Object Dim cmbName As String ' ' ' to use: ' Dim cbr As Commandbar ' Dim cbrButton as CommandbarControl ' ' we have to select in the References: ' Microsoft Office xx.x Object Library ' Public Function SCM_Copy(Optional DeleteMe As Boolean = False) On Error Resume Next 'If menu with same name exists delete cmbName = "cmb_Copy" CommandBars(cmbName).Delete If DeleteMe = True Then Exit Function If Err.Number <> 0 Then Err.Clear Set cmb = CommandBars.Add(cmbName, msoBarPopup, False, False) With cmb .Controls.Add msoControlButton, 21, , , False ' Cut .Controls.Add msoControlButton, 19, , , False ' Copy .Controls.Add msoControlButton, 22, , , False ' Paste End With Set cmb = Nothing End Function . وشرح الكود : 1. اسم القائمة المختصرة ، والتي سوف نختارها في النموذج او التقرير ، 2. هذه المجموعة الاساس منبثقة Popup ، 3. بينما هذه المجموعات عبارة عن ازرار Buttons ، وقد تكون قائمة منسدلة Combobox ، او نص Edit نُدخل فيه قيمة معينة للتصفية مثلا ، 4. هل هذه القائمة مؤقته ؟ False معناها ثابته وتُحفظ في قاعدة البيانات ، بينما True معناها انها مؤقته وتعمل لما ننادي الوحدة النمطية/الكود ، 5. هذه ارقام كل امر ، وملف الاكسل المرفق من مايكروسوفت فيه جدول يضم جميع ارقام الاوامر للاكسس 2010 () ، 6. اذا اردنا ان نحذف هذه القائمة ، فننادي الوحدة النمطية بضم True في امر المناداة المؤقته: ونستعمل True في مكان الرقم 4 اعلاه. وهي التي عندما نعملها ، لا تصبح مستقله عن الكود ، ولا تبقى في قاعدة البيانات بعد إغلاقها ، ولا يمكننا ان نستوردها في قاعدة بيانات اخرى عندما نستورد احد/جميع كائنات قاعدة البيانات الآخرى (كما هو الحال مع القائمة الثابته) ، ويجب ان نستخدم "حدث فتح" النموذج/التقرير لعملها واستخدامها في النموذج/التقرير ، و "حدث اغلاق" النموذج/التقرير لحذفها ، طيب ، خلونا نعمل هذه القائمة : Public Function SCM_Copy_Sort(Optional DeleteMe As Boolean = False) On Error Resume Next 'If menu with same name exists delete cmbName = "cmb_Copy_Sort" CommandBars(cmbName).Delete If Err.Number <> 0 Then Err.Clear Set cmb = CommandBars.Add(cmbName, msoBarPopup, False, False) With cmb Set cmbCtrl = .Controls.Add(msoControlButton, 21, , , False) ' Cut cmbCtrl.Caption = "Cut..." cmbCtrl.FaceId = 21 Set cmbCtrl = .Controls.Add(msoControlButton, 19, , , False) ' Copy cmbCtrl.Caption = "Copy..." cmbCtrl.FaceId = 19 Set cmbCtrl = .Controls.Add(msoControlButton, 22, , , False) ' Paste cmbCtrl.Caption = "Paste..." cmbCtrl.FaceId = 22 Set cmbCtrl = .Controls.Add(msoControlButton, 210, , , False) 'Sort Ascending cmbCtrl.BeginGroup = True cmbCtrl.Caption = "فرز تصاعدي..." cmbCtrl.FaceId = 210 Set cmbCtrl = .Controls.Add(msoControlButton, 211, , , False) 'Sort Decending cmbCtrl.Caption = "فرز تنازلي..." cmbCtrl.FaceId = 211 End With Set cmb = Nothing End Function . وشرح الكود: احنا توسعنا في الكود الاساسي ، واضفنا له : 1. تسمية اختيارية غير الافتراضية ، لاحظ في الصورة اعلاه اني استعملت الانجليزي والعربي ، 3. وهو لعمل خط فاصل في الصورة بين مجموعة قطع/نسخ/لصق ومجموعة فرز تصاعدي/تنازلي ، . 2. ممكن ان نبدل الصورة الافتراضية التي تيجي مع الرقم ، بتبديل هذا الرقم (لاحظ صورة الاسهم للتصاعدي/التنازلي) : . ومرفق ارقام جميع الصور الموجودة في الاكسس : . . . . . . . . . . . في قاعدة البيانات المرفقة myRight_Click.mdb ، بالاضافة الى القوائم الثابته اعلاه ، تم اضافة هذه القائمة ايضا : . والتقرير يحتوي على القائمة المؤقته التالية : . - ملف الاكسل myList.xlsx ، اخترت فيه اهم القوائم في وجهة نظري ، - ملف الاكسل AccessControls_2010.xlsx ، من مايكروسوفت ، يحتوي على جميع الاوامر 🙂 جعفر المصادر: http://dev-soln.com/access-shortcut-right-click-tool/ https://www.experts-exchange.com/articles/12904/Understanding-and-using-CommandBars-Part-II-Creating-your-own.html https://filedb.experts-exchange.com/incoming/2014/02_w06/833359/CommandBars-II.mdb https://www.experts-exchange.com/articles/18341/CommandBars-Part-III-Using-Built-in-Shortcut-Menus.html http://www.skrol29.com/us/vtools.php AccessControls_2010.xlsx myList.xlsx myRight_Click.zip
- 19 replies
-
- 31
-
-
-
- القائمة المختصرة
- shortcut menu
-
(و2 أكثر)
موسوم بكلمه :
-
ان شاء الله سنة 2020 تكون سنة خير على الجميع
jjafferr replied to jjafferr's topic in قسم الأكسيس Access
شكرا جزيلا ، هدية جميلة 🙂 جعفر -
السلام عليكم 🙂 . جعفر
- 13 replies
-
- 10
-
-
شرح لداله strcomp شرح بسيط لداله StrComp لمقارنه النصوص
jjafferr replied to أبوبسمله's topic in قسم الأكسيس Access
همممم مسكتني من يدي اللي توجعني 🙂 مو كل شيء في قاعدة البيانات استعمله ، وهاي منهم 🙂 جعفر -
شرح لداله strcomp شرح بسيط لداله StrComp لمقارنه النصوص
jjafferr replied to أبوبسمله's topic in قسم الأكسيس Access
السلام عليكم 🙂 في الواقع احد اهم الاشياء في هذه الدالة هي التفرقة بين الحروف الكبيرة والصغيرة (بالانجليزي طبعا) ، لكلمة السر 🙂 ?Strcomp("A","a",vbBinaryCompare) -1 ?Strcomp("a","a",vbBinaryCompare) 0 ?Strcomp("Jj","jj",vbBinaryCompare) -1 ?Strcomp("jj","JJ",vbBinaryCompare) 1 فإذا النتيجة = 0 ، فتكون كلمة السر مطابقة ، وإلا ، فكلمة السر غلط 🙂 جعفر -
وعليكم السلام 🙂 واهلا وسهلا بك في المنتدى 🙂 رجاء مراجعة قوانين المنتدى : قواعد المشاركة فى الموقع اضغط هنـــــــــامن فضلك لقراءة القواعد كاملة و بصفة خاصة نؤكدعلى ما يلي 1- يمنع منعا باتا نشر أية مواد تخالف حقوق الملكية الفكرية و يرجى الابلاغ عن المشاركات المخالفة من خلال زر تقرير اسفل المشاركة 2-يجب استخدام خاصيةالبحث قبل طرح السؤال توفيرا للوقت و الجهد. 3-ضرورة كتابة عنوان واضح للموضوع يدل على محتواه ويعطي وصفاً مختصرا للسؤال. 4-ممنوع منعا باتاً كتابة عناوين سينمائية مثل عاجل ، نداء الي فلان ، الي الخبراء ، طلب مساعدة ، أريد حلا..... 5-يمكن استعجال الرد باستخدام تعبير -للرفع- و غير مسموح بالالحاح او اللوم فجميع الاعضاء يشاركون تطوعا طبقا لسعة وقتهم. ومخالفة ذلك تعرض الموضوع للحذف اما انا ، فما احب اعمل تغيير في اعدادات العميل ، لأنها تطبق على جميع برامج اكسس اللي يتم تشغيلها في ذلك الكمبيوتر ، ممكن عمل اللي تريده هكذا: على حدث "التركيز" للحقل ABC ، اكتب: me.ABC.sellength = 0 جعفر
-
فتح نموذج من نموذج آخر على السجل المحدد في النموذج الاول
jjafferr replied to عزالدين المنصوري's topic in قسم الأكسيس Access
السلام عليكم 🙂 لوسمحت افتح موضوع جديد لهذا السؤال ، حفاظا على قوانين المنتدى 🙂 جعفر -
مشكلة عند حذف اوفيس 2010 وتنصيب اوفيس 2016
jjafferr replied to AmirAdams's topic in قسم الأكسيس Access
شكرا جزيلا على التوضيح 🙂 جعفر -
مشكلة عند حذف اوفيس 2010 وتنصيب اوفيس 2016
jjafferr replied to AmirAdams's topic in قسم الأكسيس Access
شو كانت المشكلة ؟ وكيف حليت المشكلة ؟ جعفر -
الامر SelLength معناه Selected Length ، اي البيانات التي تم اختيارها وتظليلها ، فإذا كانت القيمة في حقل او كومبوبوكس = "123456" ، ثم تم اختيار/تظليل الرقمين 34 ، فقيمة SelLength ستكون 2 ، ولكن لو لم يتم اختيار/تظليل اي رقم ، فقيمة SelLength ستكون صفر !! لذلك ، فهذه الدالة لا علاقة لها بطول النص في الحقل 🙂 جعفر