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

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

قام بنشر

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

اساتذتى الكرام  حفظكم الله من كل شر

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

وكما هو موضح من العنوان 

محتاج طريقة استخدم فيها دالة Select Case مع CurrentProject.AllForms

 

جربت طرق كثيره ولجهلى الاكيد لبعض الامور الاساسية فشلت فى ايجاد طريقة 

 

هذا الكود الذى جربته 

    On Error GoTo HandleError
    Dim ObjName As Forms
'    Set ObjName.Form
    '= CurrentProject.AllForms
Select Case CurrentProject.AllForms(ObjName).IsLoaded

Case ObjName = "FrmAddNewPOTally"

    txtLPOID = Forms![FrmAddNewPOTally]![cbIDPO]
    
    If DLookup("[LPOID]", "[TblChicPO]", "[LPOID] =" & [Forms]![FrmAddNewPOTally]![cbIDPO] & "") = txtLPOID Then
        Call LodInfo
    Else
        MsgBox "DataBase Not Have Any Information For List Document For PO ID# " & txtLPOID, vbCritical, "Worning"
    End If


Case ObjName = "FromPoTallySearch"

    txtLPOID = Forms![FromPoTallySearch]![SubFromPoTally].Form![txtIDPO]
    
    If DLookup("[LPOID]", "[TblChicPO]", "[LPOID] =" & [Forms]![FrmAddNewPOTally]![cbIDPO] & "") = txtLPOID Then
            Call LodInfo
    Else
            MsgBox "DataBase Not Have Any Information For List Document For PO ID# " & txtLPOID, vbCritical, "Worning"
    End If

End Select

    
HandleExit:
    Exit Sub
    
HandleError:
    If Err.Number = 0 Then
        Exit Sub

    Else
        MsgBox Err.Number & vbNewLine & vbNewLine & Err.DESCRIPTION
    End If
    Resume HandleExit

هل اجد حل ان شاء الله عندكم ؟

(اكيد فى حل) ^_^

قام بنشر

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

دعني أسألك أولا ماذا تريد من الكود أن يفعل بالضبط ؟

ثانيا : هذا السطر تحديدا يرجع لك قيمة من نوع True / False ..

2 ساعات مضت, عمر ضاحى said:
CurrentProject.AllForms(ObjName).IsLoaded

لذلك ينبغي من خيارات دالة الـ Select Case أن تكون إما   True   أو   False   ..

يعني لو كانت True   تفعل كذا .........

      ولو كانت False   تفعل كذا .........

وليس هناك خيار ثالث إلا أن كانت Null  مثلا ..  

لذلك يمكنك التعويض عنها بدالة IF  إن شئت  🙂 

  • أفضل إجابة
قام بنشر
  On Error GoTo HandleError
    
    Dim ObjName As String

    
Select Case CurrentProject.AllForms(ObjName).IsLoaded


Case ObjName = "FrmAddNewPOTally"

    txtLPOID = Forms![FrmAddNewPOTally]![cbIDPO]
    
    If DLookup("[LPOID]", "[TblChicPO]", "[LPOID] =" & [Forms]![FrmAddNewPOTally]![cbIDPO] & "") = txtLPOID Then
        Call LodInfo
        cmdEdit.Enabled = True
    Else
        MsgBox "DataBase Not Have Any Information For List Document For PO ID# " & txtLPOID, vbCritical, "Worning"
        cmdSave.Enabled = True
    End If


Case ObjName = "FromPoTallySearch"

    txtLPOID = Forms![FromPoTallySearch]![SubFromPoTally].Form![txtIDPO]
    
    If DLookup("[LPOID]", "[TblChicPO]", "[LPOID] =" & [Forms]![FrmAddNewPOTally]![cbIDPO] & "") = txtLPOID Then
            Call LodInfo
            cmdEdit.Enabled = True
    Else
            MsgBox "DataBase Not Have Any Information For List Document For PO ID# " & txtLPOID, vbCritical, "Worning"
            cmdSave.Enabled = True
    End If

End Select

    
HandleExit:
    Exit Sub
    
HandleError:
    If Err.Number = 0 Then
        Exit Sub
    ElseIf Err.Number = 2467 Then
    Exit Sub
'    ElseIf Err.Number = 2478 Then
'    Exit Sub
    Else
        MsgBox Err.Number & vbNewLine & vbNewLine & Err.DESCRIPTION
    End If
    Resume HandleExit
 

 

بالطريقه دي اشتغلت لكن بيظهر لى خطأ 2467 

وده معناه انه بيبحث عن نموذج مش مفتوح 

 

هرجع لدالة if وامري الى الله ^_^

قام بنشر

عرفت اين الخطأ

الخطأ فى الشرط فى دالة البحث 

الشرط بيشير الى نموذج مش مفتوح ^_^

فى الكيس الخاص بـ 

FromPoTallySearch

قام بنشر

جرب هذا عمر 🙂 

On Error GoTo HandleError
    
Dim ObjName As String

    
Select Case ObjName
    Case Is = "FrmAddNewPOTally"
        If CurrentProject.AllForms(ObjName).IsLoaded Then
            
            txtLPOID = Forms![FrmAddNewPOTally]![cbIDPO]
                
                If DLookup("[LPOID]", "[TblChicPO]", "[LPOID] =" & [Forms]![FrmAddNewPOTally]![cbIDPO] & "") = txtLPOID Then
                    Call LodInfo
                    cmdEdit.Enabled = True
                Else
                    MsgBox "DataBase Not Have Any Information For List Document For PO ID# " & txtLPOID, vbCritical, "Worning"
                    cmdSave.Enabled = True
                End If
        End If
        
    Case Is = "FromPoTallySearch"
        If CurrentProject.AllForms(ObjName).IsLoaded Then
            txtLPOID = Forms![FromPoTallySearch]![SubFromPoTally].Form![txtIDPO]
            
                If DLookup("[LPOID]", "[TblChicPO]", "[LPOID] =" & [Forms]![FrmAddNewPOTally]![cbIDPO] & "") = txtLPOID Then
                        Call LodInfo
                        cmdEdit.Enabled = True
                Else
                        MsgBox "DataBase Not Have Any Information For List Document For PO ID# " & txtLPOID, vbCritical, "Worning"
                        cmdSave.Enabled = True
                End If
        End If
End Select
    
    
HandleExit:
    Exit Sub
    
HandleError:
    If Err.Number = 0 Then
        Exit Sub
    ElseIf Err.Number = 2467 Then
    Exit Sub
'    ElseIf Err.Number = 2478 Then
'    Exit Sub
    Else
        MsgBox Err.Number & vbNewLine & vbNewLine & Err.Description
    End If
    Resume HandleExit

 

  • Like 1
قام بنشر
10 دقائق مضت, عمر ضاحى said:

الشرط بيشير الى نموذج مش مفتوح

لانك في البداية تشير الى النماذج IsLoaded=true

فيظهر خطأ لان نموذج البحث غير مفتوح

9 دقائق مضت, Moosak said:

جرب هذا عمر

اشوفها اكثر منطقية ..حتى لايحدث خطأ في حالة النموذج غير مفتوح

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

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

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

Important Information