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

Foksh

أوفيسنا
  • Posts

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

  • Days Won

    167

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

  1. تنسيق التاريخ في الحقل داخل الجداول ( 7/1/2024 ) وليست ( 1/7/2024 ) ثم انه لا يوجد لديك مشاريع توافق 11/1/2024 ، فسيتم جلب القيم بين التاريخين . هذا من جهة . ومن جهة ثانية القيمة الافتراضية لمربعات النص التي يتم جلب قيم التاريخ فيها على سبيل المثال =[Forms]![استعلام عن اجمالي الصناديق]![lastOfالاشهر] هنا سيتم جلب آخر قيمة وليست القيمة التي أدخلتها في التعليمة اعتقد هذه مشكلتك
  2. طيب ، جرب هذه الحيلة . 't9 Me.t9 = Nz(DSum("[Loan_Made]", "[tbl_Loans]", "Year ([Auto_Date])=" & Me.txtYear & " And [Loan_ID] > 0 "), 0) - Nz(DSum("[Payment_Made]", "[tbl_Loans]", "Year ([Auto_Date])=" & Me.txtYear & " And [Loan_ID] > 0 "), 0) If Me.t9 = 0 Then Me.Lblt9 = 0 Else MySQL = "" MySQL = "Select DISTINCT(Employeeid) From tbl_Loans" MySQL = MySQL & " Where " & "Year ([Auto_Date])=" & Me.txtYear & "And [Loan_ID] > 0 And ([Loan_Made]-[Payment_Made])=0" ' - Nz(DSum("[Payment_Made]", "[tbl_Loans]", "Year ([Auto_Date])=" & Me.txtYear - 1 & "And [Loan_Type] <> 'Inkhirat'"), 0) Set rst = CurrentDb.OpenRecordset(MySQL) Me.Lblt9 = rst.RecordCount End If 'T9E Me.t9e = Nz(DSum("Nz([Loan_Made], 0)", "[tbl_Loans]", "Year([Auto_Date])=" & Me.txtYear - 1 & " And [Loan_ID] > 0"), 0) - Nz(DSum("Nz([Payment_Made], 0)", "[tbl_Loans]", "Year([Auto_Date])=" & Me.txtYear - 1 & " And [Loan_ID] > 0"), 0) If Me.t9e = 0 Then Me.Lblt9e = 0 Else MySQL = "" MySQL = "SELECT DISTINCT(Employeeid) FROM tbl_Loans WHERE Year([Auto_Date])=" & Me.txtYear - 1 & " And [Loan_ID] > 0" Set rst = CurrentDb.OpenRecordset(MySQL) Me.Lblt9e = rst.RecordCount End If
  3. الآن من خلال معرفتك ببيانات مشروعك ، ما النتيجة الصحيحة للعام 2024 ، والعام 2025 ؟؟ فقط من أجل تلافي كثرة التجارب بيننا ولإكتساب الوقت .
  4. أخي الكريم @سيد رجب ، انت ما شاء الله 03 عضو مميز ، برأيك هل الجملة التي شرحت بها طلبك كافية و واضحة لمن سيقرأ ويلقي نظرة على ملفك ؟؟ أكرمك الله أن لا تبخل علينا بشرح وافي وكافي ، وتحديد اين تكمن المشكلة ( النموذج أو الاستعلام ... إلخ ) كونك ارسلت ملف المشروع كامل ( على ما اعتقد ) .
  5. على فكرة هذا ليس ملف مرفقك لقاعدة بيانات ، بل ملف فيديو
  6. بما أنه هناك جزء قد تحقق ، فإننا ندور حول الحل المناسب ، لأنني خارج العمل حالياً وبعيد عن الكمبيوتر ، سنتابع بأقرب وقت
  7. طيب ، جرب تعديل بسيط كالآتي .. Me.Lblt9e = Nz(DCount("EmployeeID", "(SELECT DISTINCT EmployeeID FROM tbl_Loans WHERE Year([Auto_Date]) = " & Me.txtYear - 1 & " And [Loan_ID] > 0)", ""), 0) أو لنجرب الحل الثاني استخدام Recordset مع DISTINCT .. Dim MySQL As String Dim rst As DAO.Recordset MySQL = "SELECT DISTINCT EmployeeID FROM tbl_Loans WHERE Year([Auto_Date]) = " & Me.txtYear - 1 & " And [Loan_ID] > 0" Set rst = CurrentDb.OpenRecordset(MySQL) Me.Lblt9e = rst.RecordCount أو الحل الثالث مع الدالة DSum .. Me.Lblt9e = Nz(DSum("IIF([Loan_Made] - [Payment_Made] = 0, 1, 0)", "tbl_Loans", "Year([Auto_Date]) = " & Me.txtYear - 1 & " And [Loan_ID] > 0"), 0) ما لم تقم بالتجربة لجميع الحلول ، فلن تصل إلى الحل والهدف 🤗
  8. وعليكم السلام ورحمه الله وبركاته ،، انا لو كنت مكانك ، أولا سأتأكد من وجود قيم صحيحة في الحقول المستهدفة في الشرط وعدم التكرار ، لربما تحتوي سهواً على قيم فارغة أو غير صحيحة. ثانياً سأجرب على سبيل المثال استعلام مباشر لتجربة النتيجة بدون تحديد الشروط من مصدر كمربع نص ، بل داخل الاستعلام نفسه SELECT DISTINCT(Employeeid) FROM tbl_Loans WHERE Year([Auto_Date]) = 2024 And [Loan_ID] > 0 ثالثاً وقد تكون لها الأولوية قبل النقطة السابقة ، استخدم جملة تتبع النتيجة بجملة Vba ثم اضغط Ctrl+G وتفحص النتيجة العائدة من الاستعلام Debug.Print MySQL لا ضرر أيضاً من متابعة شكل كتابة الاستعلام النحوية من وجود مسافات زائدة أو ناقصة .... الخ . وبخصوص الدالة DCount فأعتقد أنها لا تدعم بشكل مباشر حساب السجلات الفريدة (دون تكرار) بناءً على حقل معين . ويمكن استخدامها مع استعلام فرعي .. كمثال :- Me.Lblt9e = Nz(DCount("EmployeeID", "(SELECT DISTINCT EmployeeID FROM tbl_Loans WHERE Year([Auto_Date]) = " & Me.txtYear - 1 & " And [Loan_ID] > 0)", ""), 0) وأيضاً كحل شاذ يمكن استخدام DSum لجمع السجلات الفريدة حسب الجملة الشرطية ، كما يلي كمثال :- Me.Lblt9e = Nz(DSum("IIF([Loan_Made] - [Payment_Made] = 0, 1, 0)", "tbl_Loans", "Year([Auto_Date]) = " & Me.txtYear - 1 & " And [Loan_ID] > 0"), 0) مع العلم أنني أفضل الحل الثاني لأنه سيكون أسرع من الدالة DCount . وجهة نظري غير ملزمة في النهاية 😇
  9. أخي العزيز @عربي عالمي ، العبارة هذه تدل على انك تستخدم آخر إصدار ، تستطيع تغييرها كيفما تريد . سأقوم ان شاء الله غداً بجعل الاصدار في التحديث = الاصدار في الملف المرفق لتتوضح لك الصورة عند عدم وجود تحديث
  10. بتأييدي لإجابتكم معلمنا الفاضل @أبو إبراهيم الغامدي ، أدعم ما ترونه مناسباً باختياركم وتوجيهاتكم ما دام ذلك يصب في مصلحة المنتدى وأسرته 😇
  11. ما شاء الله أخي @tiger wanted ، عمل جميل وفكرة جميلة .. اسمح لي بإبداء رأيي المتواضع . 1. عند تحريك النموذج ونقل مكانه من المفترض ان يتم تحريك السكرول بار معه لا ان يبقيا في مكانهما . 2. لا يسعني إلا أن أقوم بداية طيبة ، وقد نرى منك أفكاراً جميلة كهذه ومشاريع رائعة أبدعت ..
  12. وعليكم السلام ورحمة الله وبركاته .. اخي العزيز من باب التوضيح ، هل الفترة التي تقصد بها في مثالك = التاريخ ؟؟؟؟؟؟؟ اذا كان جوابك نعم ، فإليك المرفق بعد التعديل باضافة طريقتين ، الأولى استعلام من خلال كود VBA والثانية استعلام SQL SKL.accdb
  13. زبدة الكلام هنا .. وطبعاً هذا على افتراض ان العلاقة التي ذكرها بين الجداول لها علاقة بالمطلوب !!!!!
  14. أخي الكريم أنت هنا تريد جلب قيم من مربعات نص الى مربعات نص في نموذج آخر يتم فتحه من التفاصيل ، صحيح ؟؟ لم استوعب ما علاقة العلاقات بالمطلوب !!!!! إلا إذا كان الهدف شيء آآآآآخر وإن كان هناك حل في مخيلتك فاشرحه لنا ، أو لا تبخل على نفسك وعلينا بالشرح لمطلوبك ، فالنوايا لا يعلمها إلا الله .
  15. لا شك في ذلك يا صديقي ، ولهذا السبب ارجو ان تنسب افضل إجابة للمشاركة التي حلت المشكلة وليس تعليقك السابق
  16. اعتذر منك ، أخي الكريم ، كنت اتابع من الجوال ، ولم اتمعن فعلاً في المشكلة اعتقد هذا طلبك .. جرب Database1.accdb
  17. بعد أذن صاحب السعادة .. مشاركة جانبية ، لكنها ليست بحجم مشاركة الهندسة @ابو جودي .. جرب هذا الكود مع الدالة :- Private Sub Date1_AfterUpdate() Date2 = DateAdd("yyyy", 1, Date1) Dim expirationDate As Date Dim randomString As String expirationDate = DateAdd("yyyy", 1, Me.Date1.Value) Me.Date2.Value = expirationDate randomString = GenerateRandomString(8) Me.random_number = randomString Me.Dirty = False End Sub Private Function GenerateRandomString(length As Integer) As String Dim chars As String Dim i As Integer Dim result As String chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789" result = "" For i = 1 To length result = result & Mid(chars, Int((Len(chars) * Rnd) + 1), 1) Next i GenerateRandomString = result End Function وجرب غير السنة في الحقل تاريخ الاصدار New.accdb
  18. وعليكم السلام ورحمة الله وبركاته جرب هذا الاقتراح DoCmd.OpenForm "DetailsFrm", , , "id = " & Me.sn
  19. أخونا الكريم @zero1111330566 ، وجب عليك ان تنسب أفضل إجابة للأستاذ @kkhalifa1960 صاحب الإجابة التي ناسبتك وحلت لك المشكلة ، وليس لك يا صديقي
  20. شافاكم الله وعافاكم أستاذ @Eng.Qassim
  21. وأنا أدعم كلام الأستاذ @kkhalifa1960 ، للحصول على حلول أسرع ، يفضل طرح كل مشكلة في موضوع مستقل . لا أن يقوم صاحب الموضوع بطلب 10 طلبات في موضوع واحد ضمن موضوعه . ولا أتحدث عن صاحب الموضوع بوجه التحديد بل بشكل عام . كل الإحترام والتقدير لأخونا العزيز @zero1111330566
  22. اعتقد وجوب ارسال ملف سيفي بالغرض ، ولكن لم تخاف من التجربة . إن لم تجرب فلن تعرف طريق الحل الذي قمت به هو فعلاً صحيح أم لا . في حال عدم نجاح فكرتك بعد اضافة حقل ترقيم تلقائي كمفتاح أساسي ( أو حسب حاجتك ) لزم الأمر ملف مرفق في موضوع مستقل وإغلاق هذا الموضوع باختيار افضل إجابة حتى لا نتعارض مع سياسة المنتدى
  23. يسعدني نجاح الفكرة بعد تجربتها بأكثر من مستخدم ، أشكرك مهندسنا
  24. سيتم تحديث الملف الذي يتم تنزيله من التحديث بين فترة وأخرى ، لضمان أن الفكرة تعمل بدون مشاكل
×
×
  • اضف...

Important Information