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

نجوم المشاركات

  1. ابوخليل

    ابوخليل

    أوفيسنا


    • نقاط

      4

    • Posts

      12,352


  2. عمر ضاحى

    عمر ضاحى

    الخبراء


    • نقاط

      4

    • Posts

      1,156


  3. yazan_2

    yazan_2

    عضو جديد 01


    • نقاط

      2

    • Posts

      14


  4. عبدالله بشير عبدالله

Popular Content

Showing content with the highest reputation on 07 سبت, 2024 in all areas

  1. إذا كنت ترغب في زيادة عدد المراتب، لا تحتاج إلى تعديل الكود نفسه. الكود مصمم للتعامل مع أي عدد من أوراق العمل التي تبدأ بكلمة “المرتبة”. الجملة الشرطية If Left(ws.Name, 7) = "المرتبة" Then تعني التحقق مما إذا كانت أول سبعة أحرف من اسم ورقة العمل (ws.Name) تساوي كلمة “المرتبة”. شرح الجملة الشرطية بالتفصيل: Left(ws.Name, 7): هذه الدالة تأخذ أول سبعة أحرف من اسم ورقة العمل. على سبيل المثال، إذا كان اسم الورقة هو “المرتبة 1”، فإن Left(ws.Name, 7) ستعيد “المرتبة”. = “المرتبة”: هذه هي المقارنة التي تتحقق مما إذا كانت أول سبعة أحرف تساوي كلمة “المرتبة”. إذا كانت هذه المقارنة صحيحة، فإن الكود داخل الجملة الشرطية سيتم تنفيذه. هذا يعني أن الكود سيعمل فقط على أوراق العمل التي تبدأ أسماؤها بكلمة “المرتبة”. شرح الكود تعطيل تحديث الشاشة والحساب التلقائي: Application.ScreenUpdating = False Application.Calculation = xlCalculationManual يتم تعطيل تحديث الشاشة والحساب التلقائي لتحسين أداء الكود أثناء التنفيذ. التكرار عبر جميع أوراق العمل: For Each ws In ThisWorkbook.Worksheets If Left(ws.Name, 7) = "المرتبة" Then يتم التكرار عبر جميع أوراق العمل في المصنف، ويتم التحقق من أن اسم الورقة يبدأ بكلمة “المرتبة”. الحصول على آخر صف يحتوي على بيانات في العمود “A”: lastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row التكرار عبر الصفوف من الأسفل إلى الأعلى: For i = lastRow To 2 Step -1 rank = ws.Cells(i, 4).Value يتم التكرار عبر الصفوف من الأسفل إلى الأعلى للحصول على قيمة المرتبة من العمود “D”. التحقق من أن المرتبة لا تتطابق مع اسم الورقة: If rank <> Mid(ws.Name, 9) Then تحديد ورقة العمل المستهدفة بناءً على المرتبة: On Error Resume Next Set targetWs = ThisWorkbook.Worksheets("المرتبة " & rank) On Error GoTo 0 نقل الصف إلى ورقة العمل المستهدفة وحذف الصف من الورقة الأصلية: If Not targetWs Is Nothing Then targetLastRow = targetWs.Cells(targetWs.Rows.Count, "A").End(xlUp).Row + 1 targetWs.Rows(targetLastRow).Value = ws.Rows(i).Value ws.Rows(i).Delete End If إعادة تمكين تحديث الشاشة والحساب التلقائي: Application.ScreenUpdating = True Application.Calculation = xlCalculationAutomatic
    2 points
  2. السادة الخبراء الافاضل اولا اهنئكم باقتراب المولد النبوى الشريف ثانيا هل من الممكن فتح نموذج او تقرير من خلال الشحرة وكيف يتم ذلك اريد عند الضغط على jo يفتح نموذج jo عند الضغط على cash يفتح نموذج cash ثالثا هل من الممكن عمل مربع بحث فى الشجرة لسهولة الوصول للشخص المطلوب خالص الشكر tree.accdb
    1 point
  3. انظر هنا .. سيساعدك في بناء جداولك وانظر ايضا هنا
    1 point
  4. وعليكم السلام Dim strPasswd Dim stDocName As String Dim stLinkCriteria As String On Error GoTo Err_Command6_Click_Error strPasswd = InputBox("Enter Password", "Restricted Form") If strPasswd = "" Or strPasswd = Empty Then MsgBox "لا لم تدحل كلمة المرور", vbInformation, "Required Data" Exit Sub End If If strPasswd = "12345" Then DoCmd.RunCommand acCmdSelectRecord DoCmd.RunCommand acCmdDeleteRecord Else MsgBox "ليس لك الحق بالوصول", vbOKOnly, _ "Important Information" Exit Sub End If Exit_ErrorHandler: Exit Sub Err_Command6_Click_Error: If Err.Number = 2501 Then MsgBox "Delete action cancelled" Resume Exit_ErrorHandler Else MsgBox "Error " & Err.Number & " (" & Err.Description & _ ") in procedure Command6_Click of VBA Document Form_T2 at Line " & Erl Resume Exit_ErrorHandler End If base_pass.accdb
    1 point
  5. يا اخي لك خالص الشكر والتقدير على ما قدمته وتقدمه نفع الله بك وزادك من فضلة
    1 point
  6. كل الشكر والتقدير اخي الكريم عبدالله ماقصرت ربي يزيدك من فضله ونعيمة هل ممكن تتكرم علي ان امكن بشرح عمل الكود وفي حال زيادة عدد المراتب واضافة صفحات هل اقوم فقط بتفعيل الكود؟ وفي حال تم تغيير اسم الصفحة ؟ تقبل خالص التحية والتقدير
    1 point
  7. فيه عندك حاجة اسمها الإرتساء الأفقي والإرتساء الرأسي .. ممكن تتحكم فيه بموقع العنصر ( يمين - يسار - كلاهما ) والإرتساء الرأسي ( للأعلى - للأسفل - كلاهما ) هذا ينطبق على جميع العناصر في النموذج .. جرب تضبطها بنفسك 🙂 النتيجة : ( ويمكنك نقل الأيقونات أيضا إلى اليسار ) 🙂 Modern Main Page With Main Menu ENGLISH.rar
    1 point
  8. ما شاء الله تحفة كان عندي استفسار ليه مع كود do maximize وتغير من right to left الى left to right بيفضل جزء فارغ Modern Main Page With Main Menu ENGLISH.rar
    1 point
  9. وايضا انا جربت على وندوز 7 وشغال تمام اعتقد ان المشكلة ممكن فى اعدادات اللغه عندك (محتمل)
    1 point
  10. اتفضل هذا الملف الخاص بك بعد التعديل كان لا بد لك ان تراجع الكود واذا لم تفهم الفكره تكت لكى نشرح لك الفكره لان الغرض هنا فى المقام الاول لهذا الصرح العظيم هو التعليم اولا ما قمت بعمله هو كالاتى جعلت جميع نوع البيانات فى الجدول من نوع نص قمت باضافة حقلين جدد وهو Other والمقصود منه Type بصراحة كسلت اعدلها ^_^ (اى نوع الفورم "هل هو نموذج ام تقرير") واضفة ايضا ObjName اسم العنصر (اسم الفورم الذى سوف يفتح من الشجرة) ثم قمت باضافة هذا الكود On Error GoTo HandleError Dim IDListObj, IDPriName As Double Dim strObjName, xOtheR As String 'هنا انا بحدد رقم المعرف للفورم من الشجرة لانه هيكون هو معياري IDListObj = Right(Me.TreeView2.SelectedItem.Key, Len(Me.TreeView2.SelectedItem.Key) - 1) ' IDPriName = Nz(DLookup("[Code]", "[Family]", "[ID] =" & IDListObj & "")) 'انا هنا بحاول اوصل لاسم الفورم او التقرير المسجل فى الجدول الخاص ب الاسم المسجل فى الشجرة strObjName = DLookup("[ObjName]", "[Family]", "[ID]=" & IDListObj & "") 'هنا انا محتاج اعرف نوع العنصر ال هيفتح هل هو فورم ولا تقرير xOtheR = DLookup("[Other]", "[Family]", "[ID]=" & IDListObj & "") ' MsgBox IDPriName & " - " & strObjName & " - " & xOtheR 'هنا الكود الخاص بعملية الفتح للنماذج او التقارير If strObjName = "Close" Then Select Case MsgBox(Buttons:=vbYesNo + vbQuestion, Prompt:="هل تريد غلق البرنامج؟", Title:="تنبيه!") Case vbYes DoCmd.Quit acQuitSaveAll Case vbNo Exit Sub End Select Else If xOtheR = "Report" Then DoCmd.OpenReport strObjName, acViewPreview ElseIf xOtheR = "Form" Then DoCmd.OpenForm strObjName, , , , , acDialog End If End If HandleExit: Exit Sub HandleError: If err.Number = 0 Then Exit Sub ElseIf err.Number = 94 Then ' MsgBox "لم يتم تسجيل اسم النموذج فى القائمه بعد؛؛؛" Exit Sub ElseIf err.Number = 2478 Then Exit Sub Else MsgBox err.Number & vbNewLine & vbNewLine & err.DESCRIPTION End If Resume HandleExit اخير اتفضل الملف بعد التعديل شجرة TREE.rar
    1 point
  11. الملف معي بيفتح النموذج من ضغطه واحده بشكل طبيعي ممكن تنظر للصورة القادمة
    1 point
  12. اولا باعتذر عن التأخر فى الرد لظروف الشغل وبعد اذن استاذي / @ابوخليل اسمح لى بالمداخله هذه وهذا حل اخر يمكنك الاستفاده منه وطبعا افضل لك وانصح لك ان تتبع تعليمات استاذى فى عد ادخال اللغه العربيه فى مسميات الجداول والاكواد قدر المستطاع هناك مواضيع فى المنتدي تقدم دائما افضل النصائح للمبتدئين وانا عن نفسي اتعلمت الكثير منهم سائل المولى عز وجل ان يجعله فى ميزان حسناتهم tree.rar
    1 point
  13. اولا لن تتمكن من رفع من مستواك التعليمي وخبرتك البرمجية ما دمت تستخدم الحروف العربية في البرمجة حينما اكتب كودا محكما يشتمل على حروف عربية .. حينما ارجع اليه بعد فترة لا يمكنني فهمه ولا ماذا يعمل معذرة .. لا اكف عن طبعي في اسداء النصائح ، مع علمي بأنها ثقيلة على المتلقي . على كل حال تم تحقيق طلبك بفتح النموذج المحدد بناء على العقدة tree2.accdb
    1 point
  14. السلام عليكم هذا البرنامج عملته في زمن مضى برنامج لتسجيل الأسر : الأجداد والآباء والأبناء والأحفاد بكل يسر وسهولة باستخدام جداول عدة مترابطة و يتم عرضهها في تقرير خاص ايضا استخدمت شجرة الحسابات كمستكشف لعرض الأصول والفروع بطريقة شيقة ولمسات خاصة وبالألوان ولمسات اخرى تجدونها عند تجربة البرنامج ارجوا ممن يستفيد منه الا ينساني من دعوة في ظهر الغيب . Osrah.rar
    1 point
×
×
  • اضف...

Important Information