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

طريقة عمل زر تغير وضع النموذج الفرعي من (نموذج مستمر) الى (ورقة بيانات) والعكس


عمر ضاحى
إذهب إلى أفضل إجابة Solved by ابو جودي,

الردود الموصى بها

السلام عليكم روحمة الله وبركاته

اساتذتي الكرام 

بعد اذن حضراتكم

هل من الممكن عمل زر لتحويل اى نموذج فرعي فى الفورم الى ورقة بيانات ومن ثم الرجوع كنموذج مستمر ؟

يعنى زي ما العنونا مكتوب ( عمل زر تغير وضع النموذج الفرعي من (نموذج مستمر) الى (ورقة بيانات) والعكس )

لان معايا نموذج تسجيل الحضور والانصراف المشكله ان لما بيفتح بيقعد يرص فى مربعات النصوص كثير 

على جهازي بيخذ ثانيه ل 3 ثواني 

لكن على الكمبيوتر الثاني ممكن ياخذ 10 ثواني ولو رحت على اى مربع نص بيعمل ريفرش وياخذ نفس الوقت 

مضيعه للوقت كثير وبطئ

فاريد ان يتم تحويلها لورقة بيانات ما تاخذ وقت 

لكن بعد الانتهاء محتاج ارحل البيانات والمفاتيح موجوده فى النموذج الفرعي 

علشان كده محتاج احوله الى نموذج مستمر مره اخرى

رابط هذا التعليق
شارك

وعليكم السلام استاذ عمر

استخدم الكود التالي وهو واضح لايحتاج لشرح

 If Me.mySuform.Form.CurrentView = 1 Then
        Me.mySuform.SetFocus
        DoCmd.RunCommand acCmdDatasheetView
        Exit Sub
    End If
    
    If Me.mySuform.Form.CurrentView = 2 Then
        Me.mySuform.SetFocus
        DoCmd.RunCommand acCmdFormView
        Exit Sub
    End If

ويمكنك ان تستخدم الكود التالي من داخل النموذج الرئيسي فيتحول المستمر الى datasheet

لكن المشكلة انك يجب ان تغلق النموذج حتى يعود لسيرته الاولى

Me.mySuform.SetFocus
 DoCmd.RunCommand acCmdDatasheetView

 

رابط هذا التعليق
شارك

  • أفضل إجابة

وهذه مشاركتى المتواضعة

يتم وضع الكود فى موديول

ويتم استدعاء الكود من خلال السطر الاتى مع الاخذ فى الاعتبار كتابة اسم النموذج الفرعى frmSub

Call SwitchDefaultView(Me, "frmSub")

 

Public Sub SwitchDefaultView(frm As Form, ByVal strSubFrmName As String)

    Dim sFrm As String
    Dim sFrm2 As String
    
    On Error Resume Next
    frm.Dirty = False
    If Err.Number <> 0 Then MsgBox Err.Description: Exit Sub

    On Error GoTo 0
    sFrm = frm.Name
    DoCmd.Close acForm, sFrm, acSaveYes
    sFrm2 = strSubFrmName
    DoCmd.OpenForm sFrm2, acDesign, , , , acHidden
        
        If Forms(sFrm2).DefaultView = 1 Then
            Forms(sFrm2).DefaultView = 2
            DoCmd.Close acForm, sFrm2, acSaveYes
        ElseIf Forms(sFrm2).DefaultView = 2 Then
            Forms(sFrm2).DefaultView = 1
            DoCmd.Close acForm, sFrm2, acSaveYes
        End If
        
        DoCmd.OpenForm sFrm, acNormal, , , , acWindowNormal
End Sub

 

SwitchViewsubForm.accdb

  • Like 1
رابط هذا التعليق
شارك

في 23‏/2‏/2022 at 22:14, Eng.Qassim said:

اين يظهر الخطا؟

غير اسم mySubform  على اسم النموذج لديك

انا اسف جدا فى التأخر فى الرد 

لكن يوم الخميس كان يوم ضغط فمكنتش عارف اقعد على الكمبيوتر شوي

المشكله كانت هي هي حتى لو غيرت اسم النموذج الفرعي

في 23‏/2‏/2022 at 22:41, ابو جودي said:

وهذه مشاركتى المتواضعة

يتم وضع الكود فى موديول

ويتم استدعاء الكود من خلال السطر الاتى مع الاخذ فى الاعتبار كتابة اسم النموذج الفرعى frmSub

Call SwitchDefaultView(Me, "frmSub")

 

Public Sub SwitchDefaultView(frm As Form, ByVal strSubFrmName As String)

    Dim sFrm As String
    Dim sFrm2 As String
    
    On Error Resume Next
    frm.Dirty = False
    If Err.Number <> 0 Then MsgBox Err.Description: Exit Sub

    On Error GoTo 0
    sFrm = frm.Name
    DoCmd.Close acForm, sFrm, acSaveYes
    sFrm2 = strSubFrmName
    DoCmd.OpenForm sFrm2, acDesign, , , , acHidden
        
        If Forms(sFrm2).DefaultView = 1 Then
            Forms(sFrm2).DefaultView = 2
            DoCmd.Close acForm, sFrm2, acSaveYes
        ElseIf Forms(sFrm2).DefaultView = 2 Then
            Forms(sFrm2).DefaultView = 1
            DoCmd.Close acForm, sFrm2, acSaveYes
        End If
        
        DoCmd.OpenForm sFrm, acNormal, , , , acWindowNormal
End Sub

 

SwitchViewsubForm.accdb 512 kB · 18 downloads

بسم الله ما شاء الله 

الكود شغال زي السكينه فى الحلاوه

تسلم ايدك يا مبدع ^_^

ربنا يبارك فيك ويحفظك انت وجميع المسلمين اللهم امين

رابط هذا التعليق
شارك

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



سجل دخولك الان
  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information