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

Amr Ashraf

الخبراء
  • Posts

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

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

  • Days Won

    10

Community Answers

  1. Amr Ashraf's post in ضبط وقت وتاريخ الجهاز من اكسيس عند الفتح was marked as the answer   
    على سبيل التجربة جرب ملف الاكسيس ده بدلاً من السابق ووافنى بالنتيجة .
    datex.rar
  2. Amr Ashraf's post in مشكلة فى تقرير (مطلوب عمل حقل تجميعي للاجماليات) was marked as the answer   
    عليكم السلام ورحمة الله وبركاته ..
    فى ذيل التقرير انتا كاتب
    =Nz(Sum([TotalAOT]),0) استبدلها ب
    =Nz(Sum([Total]),0) النتيجة
     
    ا
    دوال الدمج مثل الجمع والعدد والمتوسط الخ ..  فى التقرير ليس باسم عنصر التحكم ولكن باسم مصدر البيانات . بالتوفيق
  3. Amr Ashraf's post in شرح : قوائم مختصرة منبثقة من ازرار التحكم Command Buttons Shortcut Menus was marked as the answer   
    السلام عليكم ..
    #اضافة وتأكيد معلومة :
    كما أشار استاذنا ابو خليل ان الطريقة ليست حصراً على الزر فقط ولكن لها تطبيقات اخرى كثيرة
    يمكنك الاطلاع على المرفق لمزيد من التطبيقات على الفكرة ( قائمة عند الضغط على صورة - قائمة عند الضغط على F2 او F3 من الكيبورد - قائمة عند تحريك بكرة الماوس ) طبعاً مجرد امثلة والتطبيقات كثيرة جدا ..

    ولشرح مفصل ووافى وبلمسة ابداعية لطريقة القوائم المختصرة ارشح لك موضوع استاذنا الكبير جعفر فى الرابط التالى :
     
    دمتم بخير ..
    Amr Magic Button V2.0.accdb
  4. Amr Ashraf's post in مشكلة في إنشاء استعلام was marked as the answer   
    يعنى مثلا النتيجة هتكون كالتالى :
    المخازن الغير مستخدمة طبقاً لبياناتك هى

    شوف القاعدة المرفقة بها استعلام اسمه Qry
    Database1-Amr.accdb
  5. Amr Ashraf's post in كود لطباعة ملفات pdf فى مجلد مع البرنامج was marked as the answer   
    على بركة الله
    اولا يتم عمل هذا الموديول وظيفته فتح الملف المطلوب وطباعته
    Option Compare Database Option Explicit 'Written by Andrew Fergus 'set a reference to Windows Script Host Object Model ' ' agpuzon ' added x64 support ' Private Declare PtrSafe Sub Sleep Lib "kernel32" _ (ByVal dwMilliseconds As Long) Private Declare PtrSafe Function ShellExecute Lib _ "shell32.dll" Alias "ShellExecuteA" _ (ByVal hwnd As LongPtr, _ ByVal lpOperation As String, _ ByVal lpFile As String, _ ByVal lpParameters As String, _ ByVal lpDirectory As String, _ ByVal nShowCmd As Long) As LongPtr Const SW_SHOWNORMAL = 1 Public Sub PrintAnyDocument(strPathAndFileNamePlusExtension As String) Dim dfltPrinter As String Dim newPrinter As Object ' Create a new WshNetwork object to access network properties. Set newPrinter = CreateObject("WScript.Network") 'Get the name of the default printer dfltPrinter = Printer.DeviceName 'Set the default to the new printer 'USE YOUR ACTUAL PRINTER NAME BELOW 'newPrinter.SetDefaultPrinter ("New Printer Name") 'Pause Sleep 100 'Print the pdf document 'USE YOUR ACTUAL DOCUMENT NAME & PATH BELOW Call ShellExecute(0, "print", strPathAndFileNamePlusExtension, "", 0, SW_SHOWNORMAL) 'Pause Sleep 2000 'wait for 2 seconds - increase this if the code doesn't appear to work 'Pause Sleep 100 'Set the printer back to the original default 'newPrinter.SetDefaultPrinter (dfltPrinter) End Sub ثانيا يتم استدعاء الكود بالطريقة التالية :
    PrintAnyDocument "D:\اسم الفولدر\FileName.pdf" قمت بعمل نموذج طباعة وفيه حقلين نصيين اولهم اسم الملف المطلوب طباعته + الامتداد وبالتالى يمكنك طباعة اى ملف بأى امتداد ليس حصرا على PDF فقط
    الحقل الثانى عدد مرات طباعة الملف

    كود الطباعة بالشكل التالى :
    Private Sub Command0_Click() Dim FPath, SFileName, x As String FPath = CurrentProject.Path SFileName = Me.XFileName x = FPath & "\" & SFileName If IsNull(Me.XFileName) Then MsgBox ("يجب اختيار ملف") Else Debug.Print x For i = 0 To Me.XTimes - 1 PrintAnyDocument x Next MsgBox ("تمت الطباعة" & SFileName) End If End Sub ملاحظات :
    يجب ان يكون الملف فى نفس المسار مع القاعدة . هذه مجرد بداية على عجالة على قدر معرفتى الضئيلة وبالتالى هناك مساحة للتطوير بأكثر من طريقة على حسب الاحتياج (ممكن اختيار ملف بدلا من كتابة اسمه - عمل قائمة تحتوى على الملفات فى المسار ليتم الاختيار منهم - الخ ... ) . القاعدة مرفقة .. جرب ووافنى بالنتيجة
    Print Any File.accdb
  6. Amr Ashraf's post in if ممكن شرخ قاعده was marked as the answer   
    عليكم السلام ورحمة الله وبركاته .. ممكن تبحث فى المنتدى هتلاقى آلاف المواضيع اللى بتتكلم عنها ومع ذلك تفضل هذا الموضوع الغنى بالمعلومات القيمة هيفيدك جدا بأمثلة وشرح مبسط للغاية شارك فيه الاساتذة الكبار بارك الله فيهم :
     
    بالتوفيق
     
     
  7. Amr Ashraf's post in مساعدة عند الضغط انتر في الحقل عاوز الموشر ينزل على سجل جديد was marked as the answer   
    وعليكم السلام ورحمة الله وبركاته ..
    جرب كده
    Amr..12-1-2022.accdb
  8. Amr Ashraf's post in مشكلة باستعلام جمع بأكثر من معيار was marked as the answer   
    تم الحل بفضل الله باستخدام هذا الاستعلام بدلا من  QryFollowUp
    SELECT qryPlans.PlanSerial, qryPlans.Client, qryPlans.ClcFromDate, qryPlans.ClcToDate, qryPlans.Code, qryPlans.Product, qryPlans.Qty, Nz((select Sum(QtyOut) From qrySales AS T Where T.Code = QryPlans.[Code] And (T.zDate >= qryPlans.[ClcFromDate] And T.zDate <= qryPlans.[ClcToDate])),0) AS Out, [Qty]-Nz((select Sum(QtyOut) From qrySales AS T Where T.Code = QryPlans.[Code] And (T.zDate >= qryPlans.[ClcFromDate] And T.zDate <= qryPlans.[ClcToDate])),0) AS Remains FROM qryPlans; الحل من موقع اجنبى كنت قد عرضت مشكلتى عليه .. جزاكم الله خير
  9. Amr Ashraf's post in مساعدة في جلب اسم للزر من الجدول was marked as the answer   
    وعليكم السلام ورحمة الله وبركاته .. تفضل 
    b.accdb
  10. Amr Ashraf's post in استفسار عن تسلسل بشروط .. Count IIF؟؟ was marked as the answer   
    واضح ان الاساتذة مشغولين أعانهم الله .. جزاكم الله خير جميعا على مروركم الكريم
  11. Amr Ashraf's post in كود بسيط في قاعدة  if  was marked as the answer   
    وعليكم السلام .. فى زر الخروج اضف الكود التالى مثلا 
    If IsNull(Me.txit1) = True then docmd.close else cancel=msgbox("لا يمكن الخروج لوجود قيمة بالحقل") end if end sub  
  12. Amr Ashraf's post in المساعدة ان تظهر كلمة مدين اذا كان المدين اكبر من الدائن عند الرصيد was marked as the answer   
    ماشى ماشى
    خلاص عرفت قصدك هشوف كده وارجعلك
     
     
    جرب ياباشا كده فى حالة ان الحقل فارغ ومفيش سجلات مش هيعمل حاجة اما لو 0 هيجيبلك لا يوجد رصيد
    مدين ودائن.rar
  13. Amr Ashraf's post in كيف يمكن تحويل معادلة عد حقل نصي إلي عد حقل رقمي was marked as the answer   
    تفضل جرب 
     
    غائب: Val(Nz(DCount("[Sit_no]";"الدور الثاني";"[School_code]= " & [School_code] & "and code_kyab >5");0)) وياريت تشوف المشاركة دى هتفيدك 
     
     
  14. Amr Ashraf's post in هل الحماية بهذا الشكل تكون جيدة was marked as the answer   
    طريقتها سهلة اخى الكريم بس ركز معايا
    اعمل Splitt للقاعدة ثم تعالا على الجزء اللى فيه الجداول واعمل ايه باسوورد زى اى قاعدة بيانات 
    تعاالا على الجزء اللى فيه النماذج والتقارير وحدد الجداول كلها وامسحها 
    فى الجزء الخاص باستيراد الجداول اختار استيراد من الأكسس ثم علم على العلامة Link Tables وليس Import واختار القاعدة اللى فيها الجداول هيطلب منك الباسوورد اللى انتا عملته فى الأول اكتبه 
    بعدها هتلاقيه ارتبط بالجداول بطريقة طبيعية جدا مع الاحتفاظ بالباسوورد على الجداول
     
    لو لقيت العملية صعبة او مش واضحة قول وانا اصورهالك لما الاقى وقت عندى بالتوفيق
     
     
     
     
  15. Amr Ashraf's post in بحاجة الى آخر تاريخ لكل سيارة was marked as the answer   
    ازاى مش بيفتح تانى واحد يحصل معاه المشكلة دى معى على العموم شوف الصورة
    الاستعلام هيجيب لك رقم كل سيارة مع اخر تاريخ للزيت لعله المطلوب 
     

  16. Amr Ashraf's post in تعديل معادلة حسابية تلقائياً was marked as the answer   
    اخوانى بعد القليل من التركيز اكتشفت حل ابسط بكثير مما توقعت الحل كان كالتالى :
    1- قمت بانشاء استعلام جديد لجلب الرصيد واضفت ليه حقل تاريخ
    2-اضفت شرط لحقل التاريخ انه اقل من حقل التاريخ الموجود فى التقرير وستعرف لماذا
    3-بالنسبة للتقرير جعلت حقل الرصيد بعد الحركة غير منضم وكتبت فيه دالة Dlookup من الاستعلام السابق الاشارة ايه وبالتالى عند احضار القيمة من الاستعلام يقوم بتحقيق شرط التاريخ فى الاستعلام اولا وبالتالى يحضر اخر قيمة للرصيد كانت موجودة فى  تاريخ قبل التاريخ الموجود فى التقرير ويضيف عليه الحركة الجديدة وقمت ايضا باضافة دالة Nz لدالة Dlookup لاحضار قيمة "0" اذا لم يكن هناك ناتج من الاستعلام وبالتالى تظل المعادلة سليمة
     
    وبالتالى وصلنا للنتيجة المطلوبة فى حالة اضافة حركة بتاريخ سابق او تعديل تاريخ حركة حالية تكون طريقة الحساب عن طريق التقرير بترتيب التواريخ وليست عن طريق نماذج او جداول .... تمت الحمد لله ونشكر كل الاساتذة الافاضل على المشاركة فى الحل دمتم بخير
     
     
     
     
×
×
  • اضف...

Important Information