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

ابو جودي

أوفيسنا
  • Posts

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

  • Days Won

    203

كل منشورات العضو ابو جودي

  1. المرفق الاول لم يكن به سوا ايواء , يومى لذا اعتقدت انه غير ذلك سوف تكون قيمة خالية ولذلك اعتذر لضيق افقى فى التصور الصحيح اليكم الاجابة Me.[السعر] = Switch(IsNull(Me.[الخدمة]), 0, Me.[الخدمة] = "ايواء", Me.[مبلغ الشراء], Me.[الخدمة] = "يومي", Me.[الايجار] * Me.[عدد الايام], Me.[الخدمة] <> "ايواء" And Me.[الخدمة] <> "يومي", 0) اذا الكود كبير على سطر واحد وحابب تقسمه على اكثر من سطر Me.[السعر] = Switch( _ IsNull(Me.[الخدمة]), 0, _ Me.[الخدمة] = "ايواء", Me.[مبلغ الشراء], _ Me.[الخدمة] = "يومي", Me.[الايجار] * Me.[عدد الايام], _ Me.[الخدمة] <> "ايواء" And Me.[الخدمة] <> "يومي", 0 _ ) واذا اسم الحقل كبير وراح يتكرر كثرا ممكن استخدام الكود الاتى Dim Fld As String: Fld = Nz(Me.[الخدمة]) Me.[السعر] = Switch(IsNull(Fld), 0, Fld = "ايواء", Me.[مبلغ الشراء], Fld = "يومي", Me.[الايجار] * Me.[عدد الايام], Fld <> "ايواء" And Fld <> "يومي", 0)
  2. السلام عليكم احيانا قد اضطر الى فتح موضوع جديد له اصل سابق فى موضوع قديم وبالاخص لما تكون هناك مناقشات وردود ومرفقات فى صفحات كثيرة وذلك ليسهل على الباحث فى اى يوم من الوصول الى النتيجة النهائية واليوم مثلا قمت بتحديث فكرة فى مرفق سابق لى فى موضوع قديم وطبعا كنت مضطر لاضافة المرفق الجديد فى رد جديد هل يمكن مثلا فتح وقت التعديل لمجموعة المستخدمين التى انتمى اليها على مشاركتهم فقط مهما كان الفرق بين تاريخ انشاء الموضوع ووقت التعديل عندما نريد ذلك لانه ان كان ذلك متاحا مثلا كنت سوف اضيف المرفق الجديد مع السابق فى راس الموضوع وازيد سطر لوضع تلميح باضافة مرفق جديد مطور بدلا من اضافة رد جديد كما فعلت هنا
  3. استدراك وتعديل بالبحث عن كود لاحد الخطاء فى المنتدى تذكرت هذا الموضوع وتبادر الى ذهنى جعل جدول الاخطاء مدمج مع تطبيقى هذا فقمت بالتحديث الاتى اضافة استعلام باسم qrylErrorLog وهو مرتبط بالجدول الذى سوف يتم تسجيل اخطاء تشغيل التطبيق به وبذلك فور حدوث خطأ يتم تسجيل وقت الخطا ورقمه ووصفة من الاكسس ومن خلال الاستعلام يتم الربط من خلال الرقم بجدول الاخطاء المصدر الاصلى لتوصيف الاخطاء بذلك لن يحتاج كصكك التطبيق الى البحق عن ترجمة او توصيف الخطا Write Error Log V 2 .mdb
  4. السلام عليكم ورحمة الله وبركاته على الرغم من قدم تاريخ الموضوع الا ان له اهميته والتى لا غنى لنا عنها لانه احيانا تحدث مشكلات عند تنفيذ احد الاجراءات تبعا للكود المستخدم واثراء للموضوع اقدم هذه الفكرة فكرتى المتواضعة تتلخص فى الاتى 1- تسجيل الاخطاء ليقف المصمم , المطور , المبرمج على مكان الخطأ تحديدا ورقمه لسهولة حل المشكلة 2- تجاوز الاخطاء كما يترائى لـ المصمم , المطور , المبرمج من خلال الأخطاء التى تم تصيدها وتسجيلها بالجدول بالرقم الدال عليها وفى الاجراء الذى حدثت به رابط الموضوع من هنا
  5. وعليكم السلام الحمد لله الذى تتم بنعمته الصالحات هذا فضل الله تعالى اسال الله ان يهيئ لكم من امركم رشدا اتفضل تم التعديل وللتوضيح هذا السطر من الكود لطباعة التقرير DoCmd.OpenReport "rpt", acNormal وهذا السطر لاستعراض التقرير ان اردت الطباعة فقط دون فتح التقرير قم بازالة هذا السطر وان اردتهما معا فالكود فى المرفق يقوم بذلك الامر DoCmd.OpenReport "rpt", acViewPreview, , , acDialog reglemen1 (2) .accdb
  6. افضل عمل استعلام ليكون مصدر بيانات النموذج ويستخدم نفس الاستعلام للتقرير وبالنسبة للتصدير اهديكم هذا المرفق تصدير ( تقرير /عدة تقارير ) الى PDF والذى يتميز بالاتى 1- مرونة فى اختيار مسار تصدير الـ ( تقرير / عدة تقارير ) فى كل مرة حسب الحاجة ويمكنك تثبيت المسار اذا اردت 2- اختيار تقرير واحد من القائمة أو أكثر ( عدة تقارير ) لتصديرهم الى مسار محدد 3-اختيار الاجراء بعد التصدير استعراض او عدم استعراض وفتح ملف الـ PDF 4-الاكواد فى روتين عام يمكن استدعائها من اى مكان 5-امكانية اضافة طباعة التقارير مع او بدل كود التصدير الى PDF وهذه ميزة كتابة الكود فى روتين عام داخل موديول يعنى شغل فاخر من الاخر Export Multi Reports.mdb
  7. وطبعا لا ننسى الاعلان عن المتغير تبعا للنوع المطلوب مع الحاق القيم التى تريدها اليها رقم' Dim myWhere As Integer myWhere = 1 DLookup = DLookup("My_Filde", "My_Table", "My_Filde1 =" & myWhere) '-------------- نص' Dim myWhere As String myWhere = "محمد أبوعبدالله" DLookup = DLookup("My_Filde", "My_Table", "My_Filde1 ='" & myWhere & "'") '-------------- تاريخ' Dim myWhere As Date myWhere = #1/1/2021# DLookup = DLookup("My_Filde", "My_Table", "My_Filde1 = #" & myWhere & "#")
  8. كل الشكر والفضل والامتنان لكم بعد رب العزة سبجانه وتعالى استاذى الجليل ومعلمى القدير و والدى الحبيب استاذ @ابوخليل انتم اساس وعمود وروح ومظلة المنتدى الذى نستظل ونتكئ عليه بفضل الله انتم وكل اساتذتنا العظماء أدامكم الله روح طيبة تسكن القلوب .. ووجه باسم ترتاح له العيون .. ونفس مطمئنة تمتلك النفوس .. وأسأله عز وجل أن يعطيكم من عطــاياه ويمنحكم عفوه ورضاه ويغفر لكم من عمركم ما مضى ويقدر لكم الخير فيما أتى .. وأن يجعل السعادة رفيقتكم في الدنيا والآخره..وان يرزقكم البركة فى العمر والعلم والاهل والولد.. وان يتقبل كل اعمالكم فى موازين حسناتكم كعلم ينتفع بع وصدقة جارية اللهم آمين آمين آمين
  9. رجاء ان وجدت ضالتك لا تتردد بعمل التأشير على افضل اجابة ليكون معلوم انه تم اجابة سؤالكم كما توقعتم وان كانت اكثر مما توقعتم لا تغادر الموضوع دون ابداء رأيك من خلال الاعجاب والا مش هجاوب اسئلتك تانى انت حر حاسس حالى تحولت لشرير جدا جدا جدا توضيح الخطوات تتم كما بالصورة المرفقة
  10. رجاء ان وجدت ضالتك لا تتردد بعمل التأشير على افضل اجابة ليكون معلوم انه تم اجابة سؤالكم كما توقعتم وان كانت اكثر مما توقعتم لا تغادر الموضوع دون ابداء رأيك من خلال الاعجاب والا مش هجاوب اسئلتك تانى انت حر طبعا انا بهزر
  11. الله اعلم انا حصلت الكود من البحث وقيل انه هاد الرقم الثابت للهارد ديسك اللى لا بيتغير لا بأى طريقة من طرق المتبعة ولا بالفورمات ومن اجل ذلك لاننى لم اقم بعمل فورمات والتجربة للكود ذكرت ذلك القول الفصل هو التجربة العملية بتغيير رقم الهارد ديسك وتجربة الكود وبعمل فورمات ثم تجربة الكود كذلك للتاكد من انها نفس النتيحة ولكن انا اميل الا ان هذا الرقم هو الرقم الثابت والذى لا يتغير مطلقا لان الروتين يقوم بتحضير موديل وسيريال الهارد ديسك
  12. انا طلبت منكم مرفق لقاعدة البيانات للاطلاع عليه حضرتك ارفقت صور شو بسوى انا بهادول الصورتين هل مطلوب منى اخمن شكل تصميمك ايه للقاعدة منشان اقدر اضع لك الحل .. للاسف ما فينى احضر ارواح وما عندى بخور الله يرضى عليك
  13. ههههههههههههههه انا اصلا نسيت احذف هذا الحقل لا فائدة منه اصلا انت عندك تاريخ الدفع وهو اللى من خلاله بيتم الفرز مثل ما سويت لك انا فى الاستعلام qry1 ولاحظ عند فتح التقرير يختفى السجل / السجلات الذى تم التأشير عليه فى النموذج
  14. كل الشكر والتقدير والامتنان لاستاذى الجليل ومعلمى القدير و والدى الحبيب الاستاذ @ابوخليل وجزاكم الله خيرا ورزقكم مثل ما دعوتم لنا اضعافا مضاعفة انت وكل امة محمد صل الله عليه وسلم وبعد اذن استاذى الجليل ومعلمى القدير هذا تعديل ان اردنا الحصول فقط على 10 طلاب بدمج الفكرتين بآخر مرفقين Top10.accdb
  15. اتفضل ان شاء الله تلاقى طلبك reglemen1 (2) .accdb
  16. اتقضل Me.[السعر] = Switch(IsNull(Me.[الخدمة]), 0, Me.[الخدمة] = "ايواء", Me.[مبلغ الشراء], Me.[الخدمة] = "يومي", Me.[الايجار] * Me.[عدد الايام])
  17. اى حل تريد من الحلول السابقة ؟ لاقوم بالتعديل
  18. جرب التعديل الاتى النتيجة النهائية فى الاستعلام باسم qrytop10 باقى لى مشكلة بس بصراحة تعبت بس مش راح احكى لك ايه هى المشكلة Data_Base4(2).accdb
  19. اتفضل Function GetPhysicalSerial() As Variant Dim obj As Object Dim wmi As Object Dim SNList() As String, i As Long, count As Long Set wmi = GetObject("WinMgmts:") For Each obj In wmi.InstancesOf("Win32_PhysicalMedia") If obj.SerialNumber <> "" Then count = count + 1 Next 'ReDim SNList(1 To Count, 1 To 1) ReDim SNList(1 To count) i = 1 For Each obj In wmi.InstancesOf("Win32_PhysicalMedia") 'SNList(i, 1) = obj.SerialNumber SNList(i) = Trim(obj.SerialNumber & "") Debug.Print Trim(obj.SerialNumber & "") i = i + 1 If i > count Then Exit For Next GetPhysicalSerial = SNList(1) End Function لم يتم الاختبار بعد الفورمات ولا ادرى هل تغيير رقم الهاردديسك يؤثر على النتيجة ام لا
  20. فعلا لو اعتبرنا ان 9 طلاب مجموع درجاتهم 850 و5 طلاب مجموع درجاتهم 849 على اى اساس يتم اختيار الطالب رقم 10 من الـ 5 طلاب فكلهم متساون فى مجموع الدرجات فاهتيار احدهم دون الـ 4 الباقون ظلم لهؤلاء الـ 4 واللا ايـــــــــــه
  21. اسف جدا انا نسيتك 🧐 والله افتكرت دلوقتى بس للعلم فى مشكلة بقاعدتك القديمة ولا ادرى عنها شئ سوف اقوم بانشاء القاعدة مع اضافة التعديلات اللازمة فى اقرب وقت ان شاء الله
  22. طيب وكمان غير مشاكل اللغة اللى ممكن تحصل عندما يتم استخدام الحروف العربية داخل المحرر قولى يا almosafer almasry هل قدرت تفهم قاعدة iif مع العربى 🤭 كما تفضل اساتذتى الكرام بوضع الحل طبقا للاحرف العربية مع قاعدة iif انا عن نفسي لا بافهما ولا باعرف اكتبها مع العربى ههههههه علشان كدع استخدمت Select Case عن نفسى بافضلها فى كل الاحوال مرنه اكثر والان صار معاك الحلين ,وحل ثالث ايضا اثراء للموضوع استخدام الدالة switch Me.[السعر] = Switch(Me.[الخدمة] = "ايواء", Me.[مبلغ الشراء], Me.[الخدمة] = "يومي", Me.[الايجار] * Me.[عدد الايام])
  23. اتفضل ونصيحة بلاش تسمى الحقول بالعربى Sub Calc() Select Case Nz([الخدمة], "") Case "": Me.[السعر] = "" Case Is = "ايواء": Me.[السعر] = Me.[مبلغ الشراء] Case Is = "يومي": Me.[السعر] = Me.[الايجار] * Me.[عدد الايام] End Select End Sub Private Sub الخدمة_AfterUpdate() Call Calc End Sub Private Sub الايجار_AfterUpdate() Call Calc End Sub Private Sub عدد_الايام_AfterUpdate() Call Calc End Sub
×
×
  • اضف...

Important Information