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

jjafferr

أوفيسنا
  • Posts

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

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

  • Days Won

    415

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

  1. وعليكم السلام أخي حسام واهلا وسهلا بك في المنتدى 1. رجاء مراعاة وضع عنوان للموضوع يدل على محتواه ، حتى يتسنى للجميع معرفته من الوهله الاولى ، 2. قسم الاكسس يوفر لك المساعدة في حل مشاكل البرمجة في الاكسس ، اما اذا اردت الحصول على برنامج جاهز حسب طلبك ، فانصحك بالتالي: أ. البحث في المنتدى عن البرنامج الذي تريده ، فالمنتدى ثري بالكثير من المواضيع والبرامج ، ب. وضع طلبك في قسم الاعلانات الشخصية للأعضاء: https://www.officena.net/ib/forum/157-إعلانات-شخصية-للاعضاء/ جعفر
  2. أخي خالد: نعم يمكن تحويل ملف قاعدة البيانات MDB او Accdb الى صيغة تنفيذية exe ، ولكن هذا الملف الجديد الذي بصيغة exe لا يمكنه العمل بدون تنصيب الاكسس او Accsess RunTime. وهذا كان سؤال الاخ محمد جعفر
  3. وعليكم السلام 1. يجب تعطيل X النموذج من اعدادات النموذج ، 2. عمل زر لإغلاق النموذج ، 3. استعمال هذا الكود: كود زر اغلاق النموذج Private Sub cmd_close_Click() Call Form_BeforeUpdate(False) End Sub Private Sub Form_BeforeUpdate(Cancel As Integer) On Error GoTo err_Form_BeforeUpdate Dim ctl As Control For Each ctl In Me.Controls If ctl.ControlType = acTextBox Or _ ctl.ControlType = acOptionGroup Or _ ctl.ControlType = acComboBox Or _ ctl.ControlType = acListBox Then If Len(ctl.Value & "") = 0 Then MsgBox "رجاء ادخال بيانات في الحقل " & vbCrLf & ctl.Name ctl.SetFocus Exit Sub End If 'Len End If 'ctl Next DoCmd.Close Exit_Form_BeforeUpdate: Exit Sub err_Form_BeforeUpdate: If Err.Number = 2501 Then Resume Exit_Form_BeforeUpdate Else MsgBox Err.Number & vbCrLf & Err.Description End If End Sub جعفر
  4. وعليكم السلام تفضل هذا الرابط به طريقة غير مألوفة ، وبه رابط آخر للطريقة المألوفة جعفر
  5. وعليكم السلام ماشاء الله ، باين عليه عمل جميل ومتعوب عليه الحمدلله ان مجهودك ومجهود الشباب (طبعا أبوخليل وانا منهم) تم ترجمته بهذه الصيغة الجميلة شكرا جزيلا على مشاركتك ، فنحن لا نعلم ونرى إلا الاسئلة ، ولكن نتيجة الاسئلة مترجمة في برنامج مثل برنامجك ، فنادراً ما نرى جعفر
  6. الحمدلله طريقة عمل فلتر/تصفية/Filter النموذج هو ، انه يضيف الى التصفية كلما طلبت منه تصفيه ، او استخدمت الامر السابق ، لذلك ، واذا اردت تصفية واحدة فقط بإستخدام الزر ، فعليك حذف التصفية السابقة ، ثم عمل تصفية جديدة ، Me.test.Form.Filter = "" Me.test.Form.Filter = "[mdate]>=#" & Date & "#" Me.test.Form.FilterOn = true جعفر
  7. وعليكم السلام وتأكيدا لما تقول ، وبإختصار: لا يمكن استعمال الاكسس بدون تنصيب الاكسس او Accsess RunTime. جعفر
  8. نعم شيء من هذا القبيل Me.test.Form.Filter = "[mdate]=#1-2-2017#" Me.test.Form.FilterOn = True جعفر
  9. تفضل Function Control_Names(frm As Form) Dim ctl As Control Dim ctl2 As Control For Each ctl In frm.Controls If ctl.ControlType = acSubform Then 'subform For Each ctl2 In frm(ctl.Name).Form Debug.Print "Forms!" & frm.Name & "!" & ctl.Name & "!" & ctl2.Name Next Else 'normal Form objects Debug.Print "Forms!" & frm.Name & "!" & ctl.Name End If Next ctl End Function وتناديها call Control_Names(me) جعفر
  10. بدون عرض الخلايا الفارغة: في الاستعلام ، في حقل التاريخ ، في سطر Criteria ، اكتب التاريخ الذي تريده او الاشارة الى الحقل في النموذج. جعفر
  11. سؤالك كان ، وعليه وضعت لك الرد: اما الآن فانت تقول غير هذا: جعفر
  12. وعليكم السلام اعمل زر في النموذج ، وضع عليه هذا الكود ، وسيعطيك جميع اسماء الكائنات في النموذج: Dim ctl As Control For Each ctl In Me.Controls 'If ctl.ControlType = acTextBox Then MsgBox "Forms!" & Me.Name & "!" & ctl.Name 'End If Next اما اذا اردت معرفة كائنات نموذج آخر ، فضع الكود التالي في وحدة نمطية: Function Control_Names(frm As Form) Dim ctl As Control For Each ctl In frm.Controls 'If ctl.ControlType = acTextBox Then MsgBox "Forms!" & frm.Name & "!" & ctl.Name 'End If Next End Function ثم تناديها من اي نموذج ، وترفق اسم النموذج الذي تريد معرفة كائناته call Control_Names("frm_Main") واذا اردت معرفة كائنات جميع النماذج في قاعدة البيانات ، فضع الكود التالي في وحدة نمطية: Function DB_Form_Control_Names2() Dim AccObjects As Object Dim frm As Form Dim ctl As Control For Each AccObjects In CurrentProject.AllForms Set frm = Forms(AccObjects.Name) For Each ctl In frm 'If ctl.ControlType = acTextBox Then MsgBox "Forms!" & frm.Name & "!" & ctl.Name 'End If Next Next End Function وتناديها من اي نموذج هكذا: call DB_Form_Control_Names2 جعفر
  13. استخدم نفس الطريقة التي استعملناها هنا: جعفر
  14. عُذرا ، انا لم اهتم ببقية الكود ، وانما تركيزي كان على كود التأكد من تاريخ الادخال استعمل هذا الكود لتصفية التقرير بواسطة حقل التاريخ: DoCmd.OpenReport "Rep_sadder", acViewPreview, , "[date_sad]=#" & X & "#" بدلا عن DoCmd.OpenReport "Rep_sadder", acViewPreview, , "date_sad like '" & X & "'" جعفر
  15. أخي أبوجاسم للأسف لا يمكن مساعدتك بالمعلومات التي اخبرتنا عنها يجب ان تضغط البرنامج عن طريق winrar او winzip وترفقه ، واذا كان حجمه كبيرا ، فيمكنك رفعه على احد مواقع الرفع ، ووضع رابطه هنا. جعفر
  16. عندما تريد عمل ترتيب في نموذج ، فالأفضل عمل الترتيب في الاستعلام مصدر بيانات النموذج ، حيث يمكنك عمل تسلسل لأكثر من حقل ، وهذا مفيد اذا كان عندك احد الحقول قيمته متساوية (او فارغة) ، فيقوم الترتيب على اساس الحقل التالي بعد الحقل الاول ، اما التقرير ، فلا يحترم ترتيب الاستعلام ، وانما يجب عمله من المجاميع جعفر
  17. السلام عليكم أخي محمد عندك موضوع بنفس المسمى والطلب ، فما في داعي لفتح موضوع جديد جعفر
  18. ان شاء الله اجهز بعض الملفات وافتح موضوع جديد فيه جعفر
  19. الموضوع مو سهل ، لهذا السبب اردت ان اسهل عليك وعلى نفسي جرب هذا الكود: Private Sub أمر55_Click() Dim a_rr As Error Dim X As String Dim myDate() As String Dim Separator As String Dim dd As Integer Dim mm As Integer Dim yyyy As Integer On Error GoTo a_rr X = InputBox("ادخل تاريخ الكتاب الصادر", "تقرير تاريخ الكتاب (الصادر) ") 'check if whats entered is a Date 'what did we use as a Separator between the dd-/mm-/yyyy '1st location If Len(Trim(X) & "") = 0 Then MsgBox "اعد المحاولة لقد ادخلت ادخالاً خاطئاً ", vbOKOnly, "ادخال قيمة خاطئة" Exit Sub ElseIf InStr(X, "-") > 0 Then '- Separator = "-" ElseIf InStr(X, "/") > 0 Then '/ Separator = "/" Else 'Separator Not known MsgBox "اعد المحاولة لقد ادخلت ادخالاً خاطئاً ", vbOKOnly, "ادخال قيمة خاطئة" Exit Sub End If '2nd location If InStr(InStr(X, Separator) + 1, X, Separator) = 0 Then '2nd Separator Not found MsgBox "اعد المحاولة لقد ادخلت ادخالاً خاطئاً ", vbOKOnly, "ادخال قيمة خاطئة" Exit Sub End If 'Convert X string to dd, mm, yyyy myDate = Split(X, Separator) dd = myDate(0) mm = myDate(1) yyyy = myDate(2) 'is it a Date 'check for X as as a Date in the Format yyyy/-mm/-dd Debug.Print CDate(CStr(yyyy) & Separator & CStr(mm) & Separator & CStr(dd)) If IsDate(CStr(yyyy) & Separator & CStr(mm) & Separator & CStr(dd)) = False Then 'Not a valid date MsgBox "اعد المحاولة لقد ادخلت ادخالاً خاطئاً ", vbOKOnly, "ادخال قيمة خاطئة" Exit Sub End If DoCmd.OpenReport "Rep_sadder", acViewPreview, , "date_sad like '" & X & "'" Exit Sub a_rr: MsgBox "رجاءاعد المحاولة مرة اخرى فان ادخالك خاطيء ", vbOKOnly, "ادخال قيمة خاطئة " End Sub جعفر
  20. هلا والله ، وعلى راسي جعفر اخي شفان ولكني انصحك ان تُنزل المرفق التالي ، والذي به يكتمل ربط الـ FE و BE جعفر
×
×
  • اضف...

Important Information