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

Eng.Qassim

الخبراء
  • Posts

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

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

  • Days Won

    22

كل منشورات العضو Eng.Qassim

  1. طيب اشتغل على نسختك .. 1- اضفت حقل يقرأ الشهر وفي الجدول الثاني ايضا : 2- الكود التالي في زر VerCcp Private Sub VerCcp_Click() Dim monthNumber As Integer Dim paymentAmount As Double Dim totalAmount As Double Dim txtDate As Date txtDate = Date monthNumber = Me.PM paymentAmount = Me.Loan_Other If Me.VerCcp = True Then totalAmount = DLookup("TheValueCcp", "Verment", "MON=" & PM) totalAmount = totalAmount + paymentAmount DoCmd.SetWarnings False DoCmd.RunSQL "UPDATE Verment SET TxtMonth=#" & txtDate & "#, TheValueCcp=" & totalAmount & " WHERE MON=" & PM DoCmd.SetWarnings True MsgBox " تم دفع المبلغ" End If End Sub
  2. الكود جميل ويعمل بشكل ممتاز ..فقط الاستدعاء من النموذج: Private Sub Form_BeforeUpdate(Cancel As Integer) Call WriteAudit(Me, ID) End Sub
  3. عذرا..نسيت التاريخ..اعتقد بأنك تريد تحديث التاريخ بتاريخ اليوم المرفق بعد التعديل.. ff2023.rar
  4. احتجت الى اضافة حقل يأخذ رقم الشهر ..حتى تكون الاضافة برقم الشهر..هذا حسب مافهمته جرب المرفق.. ff2023.rar
  5. انت لم تذكر اي تعديل في موضوعك ..بل اردت عند اضافة سجل وتضغط على الاوبشن تنسخ السجل الى النموذج الثاني
  6. الفكرة ببساطة..اننا نعمل استعلامين..الاستعلام الاول فيه كل بيانات الجدول:سمه ماشئت وليكن Q1 نعمل استعلام ثاني ناخذ فيه من الجدول ال ID و SName ونعمل تجميع حسب اقل رقم او اعلى رقم ..هذا يعود لك كما في الصورة:سمي الاستعلام Q2 ثم نجمع الاستعلامين في استعلام اخر كما في الصورة: ومن جميل جمل ال SQL.. انك تستطيع اختصارها في استعلام واحد كما في مشاركتي السابقة..لتصبح SELECT q.* FROM Students AS q INNER JOIN (SELECT q1.SName, Min(q1.ID) AS MinOfUniqueID FROM Students AS q1 GROUP BY q1.SName) AS sub ON q.ID = sub.MinOfUniqueID;
  7. استاذ @Ahmed_J..هل جربت هذا المرفق بصراحة لم اجربه لان ليس عندي سكانر يعمل بالفيدر ..الرجل عمله بالفيديو وهو شغال تمام 08 MS access (VBA)scan and attach documents سحب سكان من الفيدر.rar
  8. يا اخي ..الله هداك ..انت تعطينا بالقطارة ضع الكود التالي: Private Sub VerCcp_Click() DoCmd.OpenForm "FrmVerment", acNormal Forms![FrmVerment]![FrmVerment_Sub]![TheValueCcp ] = Me![loan_other] Forms![FrmVerment]![FrmVerment_Sub]![TxtMonth] = Me![Auto_Date] End Sub وفي النموذج الفرعي FrmVerment_Sub.. في حدث عند التحميل تضع Private Sub Form_Load() DoCmd.GoToRecord , , acNewRec End Sub
  9. اذا كان النموذجين في نموذج رئيسي واحد اسمه مثلا frmMain ضع الكود التالي عند الضغط على VerCcp Private Sub VerCcp_Click() If Me.VerCcp = True Then Forms![frmMain]![FrmVerment_Sub].SetFocus DoCmd.GoToRecord , , acNewRec Forms![frmMain]![FrmVerment_Sub]!loan_other = Me.loan_other Forms![frmMain]![FrmVerment_Sub]!Auto_Date = Me.Auto_Date Else End If End Sub
  10. بعد اذن استاذي @kkhalifa1960 لماذا لا تضيفه مباشرة من مربع التحرير الخاص بالبحث..ان كان لديك مربع تحرير ..استخدم الكود التالي Private Sub cboNumber_NotInList(NewData As String, Response As Integer) Dim strTmp As String strTmp = "Add '" & NewData & "' as a new EmpNumber?" If MsgBox(" هذا الرقم لم يتم تسجيله", vbCritical + vbYesNo, "تنبيه") = vbYes Then strTmp = "INSERT INTO Employee ( EmpNumber ) " & _ "SELECT """ & NewData & """ AS EmpNumber;" DBEngine(0)(0).Execute strTmp, dbFailOnError Response = 0 Me.cboNumber = "" Me.Requery Else Response = 0 Me.cboNumber = "" End If End Sub ولاتنسى.. limit to list=yes
  11. عن اذن استاذي @kkhalifa1960 هل هذا ماتريد debit.rar
  12. اعتقد هذا الموضوع يفيدك..وفيه ملف جاهز
  13. برنامج جميل جدا ..جزاك الله خيرا لدي ملاحظة ان سمحت لي ..رغم اني لا امتلك معلومات في المحاسبة ماهي فائدة عرض النموذج الموضح في الصورة؟ الا يفترض انه يعرض تفاصيل الفاتورة ان كانت مشتريات او مبيعات ؟ هي عرضت نفس المعلومات الموجودة في صفحة القيود المحاسبية
  14. وعليكم السلام .. جرب المرفق Students.rar
  15. اذا اردت الحفاظ على الترقيم التلقائي..اعمل نص غير منظم في النموذج ..من خلال زر الحفظ سيتم البحث عن نفس الاسم او الرقم للطالب في الجدول..فاذا كان مكررا فلن يتم الحفظ ولن يكون هناك ترقيم تلقائي جديد.....استخدم الكود التالي في زر الحفظ Private Sub btnSave_Click() Dim strStudentName As String strStudentName = Me.txtStudent.Value ' معرفة اذا كان اسم الطالب موجود مسبقا If Not IsNull(DLookup("studentName", "tblStudentDetails", "studentName='" & strStudentName & "'")) Then MsgBox "اسم الطالب موجود مسبقا", vbInformation, " تكرار" Me.txtStudent.SetFocus Me.txtStudent.Text = "" Exit Sub Else CurrentDb.Execute "INSERT INTO tblStudentDetails (studentName) VALUES ('" & strStudentName & "')" MsgBox "تم التسجيل بنجاح.", vbInformation, "تسجيل" Me.txtStudent.SetFocus Me.txtStudent.Text = "" End If End Sub
  16. لا يوجد خطأ
  17. وعليكم السلام استخدام الترقيم التلقائي خاص لل access فقط. وهو غير قابل للتعديل الا في حالة الضغط والاصلاح يجب عليك استخدام حقل رقم إذا كنت تريد الاحتفاظ بالتسلسل.وتكون القيمة الافتراضية : =DMax("[strStudentNumber]","tblStudentDetails")+1
  18. جرب بعض الدرجات للتأكد pass.rar
  19. وعليكم السلام استاذ صالح.. بصراحة الموضوع جديد علي..لم اسمع بهذه المشكلة سابقا...قرأت المقال التالي لعله يفيدك في بعض جوانبه https://www.accessrepairnrecovery.com/blog/access-database-table-recovery
  20. انظر للخطوات في الصورة.. 1- تختار تجميع حسب الاسم 2- تضغط على (nam footer) 3-من التنسيقات تختار force new page=After section
  21. هذه ممتازة لانه لم يأخذ الاسم الاخير حينما لايكون هناك نشاط
  22. طيب كيف تأخذ القيمة والاسماء ثنائية او ثلاثية ..والنشاط مختلف.. في رأيي يجب التعديل على الجدول اولا ثم نأتي باللاحق اذا كانت النشاطات قليلة فلابأس بعمل عدد من الاستعلامات لنستخرج النشاط منها ..
  23. هل لديك حقل مفهرس يأخذ اكثر من 3450 حرفا؟
  24. وعليكم السلام استاذ محمد.. في رأيي..افضل طريقة بوضع شارطة قبل التسمية التي تريد كمثال ..محمد احمد/ مقاولات ...محمد احمد/ مقاولات عامة ثم تستخدم الموديول التالي ..وتستدعيه من الاستعلام .. Public Function splitword(myNamX As String) As String Dim exampleString As String Dim exampleArray() As String exampleString = myNamX exampleArray = Split(exampleString, "/") splitword = exampleArray(1) End Function
  25. لا اقصد ترفع كل الملف..اعمل ملف جديد..واستورد من الملف الاصلي فقط النموذج والجدول الذي يخص تلك الجزئية
×
×
  • اضف...

Important Information