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

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

  1. jjafferr

    jjafferr

    أوفيسنا


    • نقاط

      19

    • Posts

      10020


  2. kha9009lid

    kha9009lid

    الخبراء


    • نقاط

      12

    • Posts

      1347


  3. بن علية حاجي

    بن علية حاجي

    الخبراء


    • نقاط

      8

    • Posts

      4359


  4. ابو البشر

    ابو البشر

    الخبراء


    • نقاط

      8

    • Posts

      714


Popular Content

Showing content with the highest reputation on 12/21/19 in مشاركات

  1. هذا ليس لك يا ابا البشر كان للاستاذ ابو اشرف ردي لك كان لماذا الاعتذار من دواعي سروري النقاش معك اخي العزيز
    3 points
  2. في المرة المقبلة ارفع نموذجاً عما تريد لنفرض ان البيانات عندك في A العامود ابتداءً من A1 اكتب هذا المعادلة واسحب نزولاً =IF(A1="","",CHOOSE((N(A1)<=0)+1,A1,0)) الملف مرفق كمثال sal_book.xlsx
    3 points
  3. اذا كنت تقصد رقم اللون .... فتجد في هذه المشاركة ملف PDF فيه جميع ارقام الألوان .....
    3 points
  4. الله يعطيك العافية يا ابا اشرف مجهود جميل وكرم منك مشاركة المعلومة وتقديم برامج مجانية بخصوص التقرير يوجد خطأ في تسجيل وقت الخروج انظر للصورة المرفقة للادمن
    3 points
  5. المختصر المفيد : 1. اذا كان عندك على الاقل استعلامين/جدولين ، كل واحد يعمل بطريقته وبسجلاته ، يعني قد يكون عندك استعلام عادي به معايير ، واستعلام آخر به مجاميع ، واستعلام جدولي ثالث .... ، او بدل ما يكون الاستعلام جاهز ، ممكن مباشرة نكتب SQL الاستعلام في استعلام التوحيد ، مثل: 2. الشرط الوحيد هو ان يكون عدد الحقول نفسه لجميع الاستعلامات اللي تريد توحدها 🙂 3. ودمج الاستعلامات يكون عن طريق الامر Union ، والذي به لا تحصل على سجلات متكررة ، بينما الامر Union All ، يعطيك كل السجلات. 4. استعلام التوحيد الذي عملناه من الخطوة 3 ، يُعتبر استعلام عادي ، والذي يمكن ان تعمل استعلام جديد وتستعمل استعلام التوحيد كمصدر لبيانات الاستعلام الجديد ، للعلم ، استعلام التوحيد بطيء بالمقارنه مع بقية انواع الاستعلامات 🙂 جعفر
    3 points
  6. تفضل اخي الكريم Dim excelFilePath As String excelFilePath = CurrentProject.Path & "\" & "employee.xlsx" ' حذف الجدول القديم DoCmd.DeleteObject acTable, "employee" ' استيراد الجدول الجديد DoCmd.TransferSpreadsheet acLink, acSpreadsheetTypeExcel16, "employee", excelFilePath, True ملاحظة : acSpreadsheetTypeExcel16 يتغير حسب اصدار الاوفيس لديك سيظهر معك الان كجدول مرتبط قم بعمل استعلام الحاق للجدول الاساسي لاضافة البيانات اليه تحياتي
    3 points
  7. فورم عدم تكرار المسلسل والاسم ورقم التليفون الفيديو
    2 points
  8. السلام عليكم أحيانا يكو ن اكثر من مستخدم للبرنامج وأنت كمسؤول يهمك معرفة من عمل على البرنامج حسب الوقت لذلك فانك تحتاج لمعرفة تسجيل الدخول والخروج اقتطعت هذا الامر من احد برامجي متمنيا لكم الفائدة وأنتم تعلمون انني لا ابخل عليكم بأي معلومة تسجيل الدخول والخروج.accdb
    2 points
  9. السلام عليكم ورحمة الله وبركاته فكرة قمت بتجميها من عدة افكار لعمل قائمة منسدلة متغيرة حسب معطيات جدول يحتوي على خواص بحث احببت مشاركتها معكم ارجو ان تكون بها فائدة لكم مني فائق الشكر والتقدير معادلة جدول الحصص.xlsx
    2 points
  10. السلام عليكم 🙂 اذا تسمحي اخوي ابو خليل ، واخوي محمد ابوعبدالله 🙂 مشاركتي لا تؤدي العمل بضغطة زر ، وانما تقدر تستفيد منها لتوزيع الغرف لاحقا ايضا 🙂 الاختيار ليس تلقائي ، ولكنه يسهل العمل كثيرا 🙂 ومن تجربتي مع الحجاج ، بعض الاوقات في مجموعة تحب ان تكون مع مجموعة اخرى في الباص ، فطريقتي سوف تسهل عليك 🙂 العمل كله بيكون في الجدول tbl_Groups ، والعمل بالمجموعات ، لذا : 1 و 2. استعلامات الحاقية ، فقط لاخذ بيانات الجدولين tbl_Tsjeel والجدول tblSub_Tsjeel الى الجدول tbl_Groups . 4. نموذج العمل هو frm_Main تختار من قائمة "في انتظار التوزيع" (وفي الواقع الاختيار عن طريق userid) ، العدد الذي تريده ، وفي الاسفل بتشوف عدد اختياراتك ، ومجموع الاشخاص اللذين اخترتهم ، تختار الى اي باص تريد ان تلحقهم ، باختيار رقم الباص ، ثم النقر على الزر الاول (السهم من القائمة الى الباصات) ، وتلقائيا تشوف النتائج ، واذا اردت ارجاع اي مجموعة ، فالاختيار يكون من قائمة الباص ، وتنقر على الزر بالاسفل (السهم من الباصات الى القائمة) ، وتلقائيا تشوف النتيجة 🙂 . هي لعبة اكثر منها عمل 🙂 جعفر 1158.haj.mdb.zip
    2 points
  11. حسب فهمي لطلبك جرب المرفق حسابات 12020.xlsm تحياتي
    2 points
  12. السلام عليكم راجع الملف المرفق لعل فيه ما تريد... أرجو أن يفي الغرض المطلوب... بن علية حاجي Test_3.rar
    2 points
  13. السلام عليكم تعريف الوحدات النمطية : هي دالة او مجموعة من الدوال مكتوبة بلغة VBA تؤدي غرضاً معيناً او تعيد قيماً محددة بناءً على قيماً مدخلة.ويتم استدعاء الوحدة النمطية في اي موقع في قاعدة البيانات سواءً في الاستعلامات او النماذج او في اشرطة الادوات. الغرض من الدالة : اختصار الوقت والمساحة في قاعدة البيانات مثلاً ربما يكون لدينا كود او مجموعة من الكودات المتشابهة في مواقع مختلفة من قاعدة البيانات فبدلاً من كتابتها في كل مرة نكتبها مرة واحدة في وحدة نمطية ونستدعيها في الموقع الذي نحتاجها . --------------------------------------------------------------------------------------------------------------------------- انشاء الوحدة النمطية بكون بالدخول الى محرر فيجيوال بيزيك: الكود التالي يمثل الدالة الاجرائية وهي ابسط انواع الدوال: Function Function_Name( ) Statement End Function شرح الكود :يجب ان تبدأ الدالة بهذه الكلمة للتعريف بانها دالة وهناك كلمات اخرى للتعريف بنوع الدالة لكن هذا النوع الشائع. (اسم الدالة) Function_Name ويجب مراعاة مايلي عند اختيار اسم الدالة : - اختيار الاسم باللغة الانجليزية - اختيار اسم يدل على وظيفة الدالة - اختصار الاسم قدر الامكان ويفضل ان تكون كلمة واحدة. - في حال استخدام عدة كلمات يجب ان لا تحتوي على فراغ يما بينها ولذلك يتم الفصل بينها بواسطة الشرطة السفلية. - تجنب استخدام الكلمات المحجوزة واذا لزم الامر اضف حرفاً الى بداية او نهاية الكلمة . ----------------------------------------------------------------------------------------------------------------------------------------- - مجموعة الكودات الاجرائية التي نحتاجها (Statement ) - التصريح عن نهاية الدالة (End Function) وتستخدم الدالة الاجرائية في تنفيذ الاوامر مثل فتح واغلاق النماذج , التنقل بين السجلات , التحكم في خصائص النماذج وعناصر التحكم , تشغيل جمل ال SQL , اظهار الرسائل المختلفة ... الخ ويتم استدعاء هذه الدالة كالتالي بالكود: Call Function_Name ( اسم الدالة) هذه بعض التلميحات المنقولة حول الدوال ارجو ان يكون فيها الفائدة هذا نموذج لوحدة نمطية لاخفاء شاشة الاكسس عند الفتح ونموذج رسالة ترحيب test.rar رسالة ترحيب.rar
    2 points
  14. ارسلنا الرد بنفس الاقتراح في نفس الوقت
    2 points
  15. لماذا لا نجعل للدخول سجل بالوقت والتاريخ وأيضا للخروج وقت وتاريخ أيضا ؟؟؟
    2 points
  16. وعليكم السلام اخى عبداللطيف مجهود جميل بارك الله فيك اخى واستاذى خالد خالد بناء على ملاحظتك القيمه جزاك الله خيرا حاولت فيها بالحصول على اخر وقت دخول للمستخدم فى نموذج Main =DLast("Enter";"Time_Enter&Exit";"Users= [wUsers] ") وقمت باضافه حقل وقت الدخول فاستعلام التحديث ووضع له المعيار ويحدث الوقت شغال بس هل الفكره صحيحه كده تسجيل الدخول والخروج1.accdb
    2 points
  17. الف شكرا ما قصرت وبيض الله وجهك يا استاذنا الغالي ❤️
    2 points
  18. نعم انا متابع مجهود احوي محمد ابوعبدالله ، ولكني اردت المشاركة بطريقة اخرى للحل 🙂 جعفر
    2 points
  19. السلام عليكم 🙂 هنا كانت نفس المشكلة جعفر
    2 points
  20. وعليكم السلام ورحمة الله وبركاته بالاضافة الى ما تفضل به استاذنا الفاضل @أحمد الفلاحجى وله الشكر تفضل اخي الكريم الكود التالي If IsNull(txtcategorie) Then MsgBox "la case est vide", vbCritical Me.txtcategorie.SetFocus Else Dim db As DAO.Database Dim Rs As DAO.Recordset Set db = CurrentDb Set Rs = db.OpenRecordset("SELECT Categories.*FROM Categories;") Rs.AddNew Rs("IdCategorie") = DMax("[IdCategorie]", "Categories") + 1 Rs("LibCategorie") = Me.txtcategorie Rs.Update Rs.Close End If testInsert.accdb تحياتي
    2 points
  21. بعد إذن أخي الفاضل حسين مامون محاولة لعلاج المشكلة تم تعديل اسماء أوراق العمل جرب هذا بعد فك الضغط برنامج النظافة بعد التعديل (1).rar
    2 points
  22. مبروك أستاذ أحمد بدره إنضمامك لعائلة الخبراء ,أسأل الله لك التوفيق والنجاح دائما ..وأعانك الله على هذه المسئولية الجديدة وسدد الله خطاك عن حق وجدارة بارك الله فيك وزادك الله من فضله
    1 point
  23. السلام عليكم ورحمة الله وبركاته شيت كنترول للمرحلة الابتدائية من الأول وحتى السادس بتعديل درجات التربية الرياضية والصفين الأول والثاني نظام جديد ... رجاءً قراء التعليمات قبل العمل علي الكنترول رابط الشيت حمل من هنا
    1 point
  24. جزاكم الله خيرا اساتذتى ما اجمل تفاعلكم معنا وتبسيط وتوفير المعلومات للمبتدئين وطلاب العلم جزاكم الله عنا خير الجزاء واشارك معكم بقناه لشرح Vba للاكسيس قناه مساقات اونلاين واذا فيه قنوات اخرى او كتب بس والنبى عربى وان لم يكن الا عنجليزى فيرحمنا الله معه بقى لاننى ابحث عن اى شىء للفهم والتعلم حتى اننى استعمل اكواد الاكسيل فالاكسيس والحمدلله تقبلوا تحياتى وتمنياتى لكم وللجميع بالتوفيق طبتم واهتديتم
    1 point
  25. 1 point
  26. من جد وجد ومن زرع حصد الف مبارك استاذنا واحونا احمد
    1 point
  27. الف مبروك على الانضمام الى الفريق بالتوفيق
    1 point
  28. 1 point
  29. على افتراض أن مستخدم من المستخدمين لم يسجل خروج في نفس اليوم .... كيف يمكن لمدير الدائرة يعرف متى تم الخروج وفي أي تاريخ ؟؟؟؟
    1 point
  30. جزاك الله خيرا اخى واستاذى خالد احسنت اخى ومنكم نتعلم وتنويع الحلول هو الطريق للتعلم فعلا كما قال اخينا واستاذنا الحبيب جعفر جزاكم الله خيرا
    1 point
  31. فكرة جميلة وتؤدي العرض ويمكن عملها بدون الحاجة الى حقل الوقت في الاستعلام DLast("[id]";"Time_Enter&Exit";"[users] = '" & [Forms]![login]![Username] & " ' ") تسجيل الدخول والخروج.accdb
    1 point
  32. الله يجزيك الخير انا عندي وسائل اخرى استطيع ان اصل الى هدفي بدو ن اللجوء الى هذا النوع من الاستعلامات لكن الفضول يقتلني لذلك حاولت الاستفادة من المعلومات حول هذا النو ع من الاستعلامات اشكرك على المرور استاذي الكريم جعفر
    1 point
  33. استاد احمدبدره بارك الله فيك وفي علمك ورزقك تحياتي
    1 point
  34. جرب على 2007 المكتبة 2019-2020 14-12-2019-جرب على 2007.accdb
    1 point
  35. جميل حدا هل بالامكان تثبيت الطابعه الخاصه بالملصقات لتكون افتراضيه لان الكثير يكون عنده اكثر من طابعه فلو كان فيه امكانية اضافة الطابعه الخاصه بالملصقات ضمن الاعدادات لتكون ثابته اكون لك من الشاكرين
    1 point
  36. Sub txtonly() Dim a, m, x, i a = Cells(2, 1).Resize(Cells(Rows.Count, 1).End(xlUp).Row - 1) With CreateObject("vbscript.regexp") .Global = True .MultiLine = False .Pattern = "(\*+)|(\.)|(\&)|(\^)(\%)|(\$)|(\#)|(\@)|(\!)|(\d+)" For i = 1 To UBound(a) a(i, 1) = Trim(.Replace(a(i, 1), "")) Next End With [b2].Resize(UBound(a)) = a End Sub
    1 point
  37. السلام عيكم بعد اذن الاستاذ sandanet ملفك بعد التعديل عليه من ملف الاستاذ sandane ان شاء الله يكون المطلوب q.rar
    1 point
  38. تفضل فك الضغط اولا جرب طباعة كشف حسب الموقع اما طباعة بيان العامل ليست لي فكرة عن ما تقصد ربما لو صممت نمودج يكون افضل تحياتي برنامج النظافة بعد التعديل (1).rar
    1 point
  39. وعليكم السلام 🙂 الآن نظرت الى الموضوع بالكامل ، واضطررت ان اغير الامر ، لأن الامر السابق يصدر تسمية الحقول (باللغة العربية) ، بينما لما نستوردهم ، لما يعمل مقارنة اسماء الحقول بالتي موجودة في الجدول ، يرى انها مختلفة ، فتظهر رسالة تقول بأن الحقل الفلاني غير موجود في الجدول !! هذا الكود الجديد: Private Sub cmd_Delete_Records_Click() Dim strSQL As String strSQL = "DELETE [tbl_Teacher].* FROM [tbl_Teacher];" DoCmd.SetWarnings False DoCmd.RunSQL strSQL DoCmd.SetWarnings True End Sub Private Sub cmd_Export_Click() Dim ImportFileName As String ImportFileName = CurrentProject.Path & "\tbl_Teacher" & ".xls" DoCmd.TransferSpreadsheet acExport, 8, "tbl_Teacher", ImportFileName, True End Sub Private Sub cmd_Import_Click() Dim ImportFileName As String ImportFileName = CurrentProject.Path & "\tbl_Teacher" & ".xls" DoCmd.TransferSpreadsheet acImport, 8, "tbl_Teacher", ImportFileName, True End Sub جعفر 1153.db2.zip
    1 point
  40. مبروك استاذ خالد ..بالتوفيق 🤩🤩 جزاك الله خيراً استاذ جعفر علي متابعتك المستمرة 🌺🌺🤩🤩
    1 point
  41. السلام عليكم طال غيابي عنكم احبتي في الله لسببين اولهما ضروف خاصة وثانيها لتوجهي الى تعلم لغات برمجة اخرى و ابتعادي عن الاكسل العشق فلما اخذني الحنين للاكسل فكرة لمذا لا استخدمه كما تعلمت مع اللغات الاخرى فرفعت التحدي و عملت هدا البرنامج البسيط البرنامج عبارة عن تسجيل عمليات استلام وتسليم الوصلات وظهار كشف الحساب لكل مورد على حدى او تقرير عام بصفة عامة البرنامج بسيط ما يهم هو ما يخفيه من اخواد و مايضهره من جمال للفورم اما الثانية ما يضهره من جمال الفورم حاولت ان اعمل ما يستخدم في c# ui design و النتيجة هي اما الاولى مايخفيه من اكواد هي قاعدة البيانات هي اكسيس بحيث برمجة كلاص يمكنك استخدامه لتتعامل مع ملفات الاكسيس بكل سهولة ابتداءا بجملة الاتصل فتح الاتصال اغلاق الاتصال الى تنفيذ الكموند تماما كما هو الحال مع c# او غيرها من لغات اخرى الى كل من يبحث عن كيفية العمل على برنامج واحد باكثر من جهاز او مستخدم في نفس الوقت هذا الملف يمكنك من ذلك وذالك برفع قاعدةالبيانات الاكسيس على اي استضافة كقوقل دريف او دريفبوكس وتسليم ملف الاكسل للمستخدمين سيستطيعون جميعهم العمل عليه في نفس الوقت كل ما تحتاجه هو تغيير مسار الملف في كلاص الاتصال المسمى ClsConnctionDB في الاخير تحياتي للجميع WPFVBA.rar
    1 point
  42. مثالك الاخير هو الذي شرح لنا المطلوب 1. نعمل استعلاملنتائج الجدولين Customer و Denomination ، واستعلام آخر لنتائج الجدولين Customer و Deposit ، ولغرض الخطوة التالية (استعلام توحيد) ، فيجب ان تكون عدد الحقول نفسها في الاستعلامين ، وبنفس الترتيب: . ونتائجهم هي كما نريد: . ثم نحول وضع الاستعلامين الى SQL ، ثم نعمل استعلام توحيد ، وننسخ SQL الاستعلام الاول الى استعلام التوحيد ، ثم جملة Union All ثم ننسخ SQL الاستعلام الثاني: . ونتيجة الاستعلام: . الآن نعمل استعلام جديد ، ومصدره استعلام التوحيد اعلاه ، ويجب استعمال زر النموذج لتشغيل الاستعلام ، كما ان الاستعلام سيأخذ التاريخ من النموذج كذلك ، والاستعلام ينادي الوحدة النمطية Bal ، والتي سيأخذ نتائجه منها: . وكود زر فتح الاستعلام هو (لاحظ انه نريد ان نبدأ متغير الجمع B من الصفر) : Private Sub cmd_qry_Cust_Deno_Depo_Click() B = 0 DoCmd.OpenQuery "qry_Balance" End Sub . وهذه نتيجة الاستعلام: . وهذه هي الوحدة النمطية: Public B As Long Function Bal(C, D) 'C = Cash 'D = Depo C = Replace(C, "-", 0) D = Replace(D, "-", 0) B = C + B - D Bal = B End Function . الباقي الذي تريده ، يجب ان تعمله في التقرير جعفر 597.Test.accdb.zip
    1 point
  43. الى هنا والحديث كله عن API ، ولكن استخدام الوحدات النمطية بشكل يومي يتعدى هذه المعلومة ، فمعظم برامجنا تحتاج الى حساب او معادلات او ... ، فهنا يأتي الوحدة النمطية ، وبالذات عند مناداتها من الاستعلام (او النموذج او التقرير)، ففي الاستعلام قد تكون محتاج الى اجراء عملية حسابية لحقل معين ، وقد تكون خطوات هذه العملية كثيرة ، ولا يمكنك عملها في سطر واحد في الاستعلام ، مثلا: الحقل items في الجدول tbl_AHF يحتوي على 3 معلومات مكررة وهي A, H, F نريد ان نقسم الحقل qty على عدد معين (يعتمد على قيمة الحقل items) ، نقسم qty على 7 ، اذا كانت قيمة items تساوي A ، نقسم qty على 6 ، اذا كانت قيمة items تساوي H ، نقسم qty على 5 ، اذا كانت قيمة items تساوي F ، هنا من الصعوبة ان نضع كود العملية كلها في الاستعلام في سطر واحد ، واذا وضعناه ، فلن نستطيع تعديله بسهولة لاحقا ، لأنه سيكون معقدا ، فالطريقة المثلى هنا ، هي عمل وحدة نمطية ، وارسال قيم الحقول items , qty اليها ، وعمل الكود بها ، واسترجاع النتائج منها ، الوحدة النمطية ستكون هكذا: Function Get_Values(i, q) 'i = items 'q = qty If i = "A" Then Get_Values = q / 7 ElseIf i = "H" Then Get_Values = q / 6 ElseIf i = "F" Then Get_Values = q / 5 End If End Function . والاستعلام يكون بهذه الطريقة: . والنتيجة: . وهنا نلاحظ من النتيجة ان تنسيقها للجهة اليسار ، مما يعني ان النتيجة نص وليست رقم ، لذا نرجع للوحدة النمطية (ودون المساس بالاستعلام) ونجري عليها التعديل المطلوب ، وبكل سهولة ، لتغيير النتيجة من نص الى رقم ، وتصبح الوحدة النمطية: Function Get_Values(i, q) As Double 'i = items 'q = qty If i = "A" Then Get_Values = q / 7 ElseIf i = "H" Then Get_Values = q / 6 ElseIf i = "F" Then Get_Values = q / 5 End If End Function . والنتيجة جعفر 258.modulesANDcommands.mdb.zip
    1 point
  44. شكرا أخي الاستاذ رمهان على هذا الشرح والان الى الجانب العملي لا تستطيع ان تنادي هذه الوحدات بالطرق التقليدية ، وكل لغة (مثل VB, VBA, C++, ...) لها طريقتها الخاصة في مناداة هذه الوحدات ، وبالنسبة الى اكسس ، فالرابط التالي يعطينا امثلة في كيفية استخدامها: http://access.mvps.org/access/index.html وملك الوحدات النمطية وبالذات للرسومات في الاكسس: http://lebans.com/ جعفر
    1 point
  45. هو فيه اختلاف ولكن يتطلب الخلفية في فهم برمجة الكائنات oop اختصار object oriented programming علشان نتكلم علميا ويمكن اكون مقصر لعدم التخصصية البحتة خاصة وان هذا الموضوع شبح طلاب الحاسب الالي ! ولكن برضه بالبلدي: الوحدة النمطية العامة هي مكان لدوال والمتغيرات العامة لكل البرنامج ! ماتضعه هنا يكون معروف على مستوى البرنامج ! ممكن متغير ياخذ قيمته من اي نموذج ! او طبعا عرفنا انها مكان لمناداة ال api ! وفي نفس الوقت هي المكان التي ابرمج بلغة ال access basic ! اما وحدة الفئة : هي مكان انشئ من خلاله الكائنات ! نحن نعرف ان لكل كائن خصائص وطرق او اوامر ! هنا نستطيع ان اعرف كائنات جديدة لها خصائصها وطرقها ! لاحظ انه لكل نموذج وتقرير عند انشائه له وحدة فئة خاصة وهي صفحة كود الاحداث ! وهذه تكون وارثة جميع الخصائص والطرق من النموذج او التقرير ! هذا والحديث يطول ويحتاج وقت او تسلسل في المواضيع علشان ينفهم ! ولكن اتمنى ان افدتك ولو بالمفاتيح ! تحياتي
    1 point
×
×
  • اضف...

Important Information