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

kanory

الخبراء
  • Posts

    2,196
  • تاريخ الانضمام

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

  • Days Won

    133

kanory last won the day on فبراير 3

kanory had the most liked content!

السمعه بالموقع

4,143 Excellent

عن العضو kanory

البيانات الشخصية

  • Gender (Ar)
    ذكر
  • Job Title
    معلم

اخر الزوار

7,324 زياره للملف الشخصي
  1. طيب ، سأشرح لك الدالة `GenerateSequence` هذه الدالة تقوم بإنشاء تسلسل رقمي للاسماء المتشابهة في استعلام : 1. `Function GenerateSequence( FullName As String) As Integer`: هذا تعريف الدالة `GenerateSequence` التي تأخذ مُدخل واحد يُسمى ` FullName` من نوع `String` وتُرجع قيمة من نوع `Integer`. 2. `Static dict As Object`: هنا نُعرف متغير `dict` ككائن `Object`. الكلمة `Static` تعني أن الكائن `dict` سيحتفظ بقيمته حتى بعد انتهاء تنفيذ الدالة، وهذا مهم لأننا نريد أن يحتفظ القاموس بالاسماءوالأرقام المتسلسلة التي تم إضافتها سابقًا. 3. `If dict Is Nothing Then Set dict = CreateObject("Scripting.Dictionary")`: هذا الشرط يتحقق إذا كان الكائن `dict` لم يتم إنشاؤه بعد، وفي هذه الحالة يتم إنشاء كائن جديد من نوع "Dictionary" (قاموس). 4. `If Not dict.exists( FullName) Then`: هذا الشرط يتحقق إذا كان الاسم` FullName` غير موجود في القاموس `dict`. 5. `dict.Add FullName, dict.Count + 1`: إذا كان الاسم` FullName` غير موجود، يتم إضافته إلى القاموس مع قيمة تسلسل رقمي جديدة تُحسب بإضافة واحد إلى عدد الاسماء الموجودة في القاموس. 6. `GenerateSequence = dict( FullName)`: في النهاية، تُرجع الدالة القيمة المتسلسلة للاسم` FullName` الموجود في القاموس. باستخدام هذه الدالة في استعلام، يمكنك إنشاء حقل محسوب يعرض رقمًا متسلسلًا لكل اسم متشابه بناءً على ترتيب ظهوره في الاستعلام. هذا مفيد لتتبع الاسماء وترتيبها بشكل فريد داخل الاستعلام.
  2. ممكن في وحدة نمطية وتناديها من النموذج او تعمل زر وتلصق الكود مباشرة فيه بالتوفيق
  3. Dim rs As DAO.Recordset Dim rs1 As DAO.Recordset Dim R As Integer Dim firstRecordFields As String Dim firstRecordFields1 As String Set rs1 = CurrentDb.OpenRecordset("SELECT Table1.الاسم FROM Table1 GROUP BY Table1.الاسم;", dbOpenDynaset) rs1.MoveLast: rs1.MoveFirst R = rs1.RecordCount For i = 1 To R Set rs = CurrentDb.OpenRecordset("SELECT Table1.الاسم, Table1.العمل1, Table1.العمل2, Table1.اللجنة1, Table1.اللجنة2 " & _ " FROM Table1 " & _ " WHERE (((Table1.الاسم)=""" & rs1!الاسم & """));", dbOpenDynaset) If Not (rs.BOF And rs.EOF) Then rs.MoveLast firstRecordFields = rs!العمل1 firstRecordFields1 = rs!اللجنة1 rs.MoveFirst rs.Edit rs!العمل2 = firstRecordFields rs!اللجنة2 = firstRecordFields1 rs.Update End If rs1.MoveNext Next i rs.Close rs1.Close Set rs = Nothing Set rs1 = Nothing لهذا كان السؤال .... لان الكود أو البرنامج ممكن يعلق يوقف يحدث خطأ ما ... عندها لن تستطيع العودة لتلك البيانات .... على العموم جرب هذا الكود وبدون حذف ,,, فقط تحديث للبيانات
  4. رغم ان العنوان لا يمثل المطلوب وهذا مخالف لترتيبات وقوانين المنتدى ..... لكن بعد الدمج ماهو مصير السجل الثاني ( هل يحذف أم يبقى في الجدول ) .......
  5. طيب ممكن نستخدم هذه الطريقة .... ولكن يبقى ايضا نقطة مربعات التسمية وعددها في النموذج ؟؟؟؟؟ Dim db As Object Dim rst As DAO.Recordset Dim mySQL As String Dim i, m As Integer mySQL = "SELECT DISTINCT جدول1.[اسم العامل], DSum(""راتب"",""جدول1"",""[اسم العامل] ='"" & [اسم العامل] & ""'"") AS Expr1 FROM جدول1;" Set rst = CurrentDb.OpenRecordset(mySQL) rst.MoveLast: rst.MoveFirst If Not rst.BOF Then rst.MoveFirst Dim ctl As Control For i = 1 To rst.RecordCount Me.Controls("a" & i).Caption = "مجموع" & " " & rst.Fields(0) Me.Controls("b" & i).Caption = rst.Fields(1) rst.MoveNext Next i rst.Close Set rst = Nothing مثال (5).accdb
  6. جرب المرفق ..................... New Microsoft Access Database (9).accdb
  7. جرب هذا ........ Private Sub Order_No_AfterUpdate() D_R = DateAdd("d", -3, Date) On Error GoTo Errw DoCmd.GoToRecord , , acFirst For i = 1 To Me.Recordset.RecordCount If Me.supplier = "مرفوض" And Me.mark = 0 And Format(Me.inday, "dd/mm/yyyy") <= Format(D_R, "dd/mm/yyyy") And IsNull(Me.P_Odate) Then DoCmd.GoToRecord , , acLast DoCmd.SetWarnings False DoCmd.RunCommand acCmdDeleteRecord Me.Order_No.SetFocus MsgBox "لايمكن اضافة جديد" Exit Sub Else Me.Order_No.SetFocus End If DoCmd.GoToRecord , , acNext Next i Exit Sub Errw: End Sub
  8. عشان كده انا سئلتك هنا هذا السؤال وحصلت منك على اجابه مختصرة وبخيلا فيها لا تفيد سؤالي قلت اضع لك اجابة وعندما تجرب تضطر الى استخراج اجابات مطولة . كما حصل الان .. طيب ممكن طبعا ... جاري التعديل ولكن عندما اعود الى المكتب ... بارك الله فيك
  9. ممكن تعمل هكذا .... طبعا مختلف عما تريد ( قوائم تشبه قوائم الاكسس علوية ) .....
×
×
  • اضف...

Important Information