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

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

قام بنشر

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

معي هذا الكود لفتح تقارير 


If (Me.OP) = 1 And (Me.RegReference) > 0 Then
        DoCmd.OpenReport "PrintSalaryAll", acViewPreview
        Else
        MsgBox "You Don't select Time Of Salary" & vbCrLf & "لم يتم اختيار فترة الرواتب", vbCritical, "Warning" & "  -  " & "تحذير"
        Exit Sub
ElseIf (Me.OP) = 2 And (Me.cbEmpNo) = Null And (Me.RegReference) = Null Then
        DoCmd.OpenReport "PrintSalaryOne", acViewPreview
        Else
        MsgBox "You Don't select Emp No Or Time Of Salary" & vbCrLf & "لم يتم اختيار الموظف او فترة الرواتب", vbCritical, "Warning" & "  -  " & "تحذير"
        Exit Sub
ElseIf (Me.OP) = 3 And (Me.RegReference) > 0 Then
        DoCmd.OpenReport "PrintSalaryAll_Cash", acViewPreview
        Else
        MsgBox "You Don't select Time Of Salary" & vbCrLf & "لم يتم اختيار فترة الرواتب", vbCritical, "Warning" & "  -  " & "تحذير"
ElseIf (Me.OP) = 4 And (Me.RegReference) > 0 Then
        DoCmd.OpenReport "PrintSalaryAll_Transfer", acViewPreview
        Else
        MsgBox "You Don't select Time Of Salary" & vbCrLf & "لم يتم اختيار فترة الرواتب", vbCritical, "Warning" & "  -  " & "تحذير"
End If

لكن بيجبلى خطأ 
1YFMAlE.png

 

ف ممكن اعرف سببها

قام بنشر

استخدامك لدالة If فيه مشكلة لأن هناك صورتين من دالة If الصورة الاولى :

If condition  Then 
statements1(التعليمات المنفذة في حال تحقق الشرط )
Else
statements2(التعليمات المنفذة في حال عدم تحقق الشرط)
End If

مثال

If grade >= 50 Then 
Text1 ="ناجح"
Else
Text1 ="راسب"
End If

الصورة الثانية

If  condition1  Then 
statements1(  التعليمات المنفذة في حال تحقق الشرط الأول)
ELSEIF  condition2  THEN 
statements2(التعليمات المنفذة في حال عدم تحقق الشرط الأول و تحقق الشرط الثاني)
ELSE
statements2(التعليمات المنفذة في حال عدم تحقق جميع الشروط السابقة)
End If

مثال

If grade >= 90 Then 
Text1 ="ممتاز"
ElseIf grade >= 80 Then
Text1 ="جيد جدا"
ElseIf grade >= 70 Then
Text1 ="جيد"
ElseIf grade >= 60 Then
Text1 ="مقبول"
Else
Text1 ="راسب"
End If

انتا قمت بدمج الطريقتين فى واحدة واستخدمت Else اكثر من مرة فى حين انك تستخدم ElseIf بالفعل

المرجع والامثلة من هذا الموضوع

 

ابحث فى نفس الموضوع عن Select Case واستخدمها قى حالتك ستكون اسهل من If فى اعتقادى . بالتوفيق

  • Like 2
قام بنشر

الشروط البسيطه سهله

انا محتاج ابني شروط  بناء على اختيار من 4 اختيارات 

nc25mYm.png

 

طبعا الاختيار الاول ( جميع الموظفين  الكل ) لازم يتم اختيار الفتره من الشهور وورقم الاختيار 1 

والاختيار الثاني موظف واحد هيكون هناك 3 شروط (الاول الاختيار نفسه وثانيا الشهر وثالثا اسم الموظف)

اما الثالث والرابع فهما مثل الاول 

 

 

قام بنشر
59 دقائق مضت, Amr Ashraf said:
If condition  Then 
statements1(التعليمات المنفذة في حال تحقق الشرط )
Else
statements2(التعليمات المنفذة في حال عدم تحقق الشرط)
End If

انظر الى هذه الجملة في كودك استاذ عمر

Else ليس فيها End If

  • Like 1
  • تمت الإجابة
قام بنشر

تم بحمد لله حل المشكله بواسطة الاستاذ ابو جودي @ابو جودي

بارك الله له 

Dim strTitleMsg As String
strTitleMsg = ChrW("1607") & ChrW("1600") & ChrW("1600") & ChrW("1600") & ChrW("1600") & ChrW("1600") & ChrW("40") & ChrW("32") & ChrW("1578") & ChrW("1606") & ChrW("1576") & ChrW("1610") & ChrW("1600") & ChrW("1600") & ChrW("1600") & ChrW("1600") & ChrW("1600") & ChrW("1600") & ChrW("1600") & ChrW("1600") & ChrW("1607") & ChrW("32") & ChrW("41") & ChrW("1600") & ChrW("1600") & ChrW("1600") & ChrW("1600") & ChrW("1600") & ChrW("1575") & ChrW("1605")


Dim MsgStyl As String
MsgStyl = vbMsgBoxRight + vbMsgBoxRtlReading + vbCritical

Dim MsgOPNull As String
MsgOPNull = ChrW("1605") & ChrW("1606") & ChrW("32") & ChrW("1601") & ChrW("1590") & ChrW("1604") & ChrW("1603") & ChrW("32") & ChrW("1575") & ChrW("1582") & ChrW("1578") & ChrW("1585") & ChrW("32") & ChrW("1575") & ChrW("1604") & ChrW("1606") & ChrW("1605") & ChrW("1591")

Dim cboMontNull As String
cboMontNull = ChrW("1605") & ChrW("1606") & ChrW("32") & ChrW("1601") & ChrW("1590") & ChrW("1604") & ChrW("1603") & ChrW("32") & ChrW("1575") & ChrW("1582") & ChrW("1578") & ChrW("1585") & ChrW("32") & ChrW("1575") & ChrW("1604") & ChrW("1588") & ChrW("1607") & ChrW("1585") _

Dim cboEmbNull As String
cboEmbNull = ChrW("1604") & ChrW("1605") & ChrW("32") & ChrW("1610") & ChrW("1578") & ChrW("1605") & ChrW("32") & ChrW("1575") & ChrW("1582") & ChrW("1578") & ChrW("1610") & ChrW("1575") & ChrW("1585") & ChrW("32") & ChrW("1575") & ChrW("1604") & ChrW("1605") & ChrW("1608") & ChrW("1592") & ChrW("1601")

  Select Case Nz(Me.OP, "")
        Case Is = "": MsgBox MsgOPNull, MsgStyl, strTitleMsg
        Case Is = 1
            If Len(Me.RegReference) = 0 Or IsNull(Me.RegReference) Or Me.RegReference = "" Or Me.RegReference = vbNullString Then
                MsgBox cboMontNull, MsgStyl, strTitleMsg
            Else
                DoCmd.OpenReport "PrintSalaryAll", acViewPreview
            End If
        Case Is = 2
            If Len(Me.RegReference) = 0 Or IsNull(Me.RegReference) Or Me.RegReference = "" Or Me.RegReference = vbNullString Then
                MsgBox cboMontNull, MsgStyl, strTitleMsg
            ElseIf Len(Me.cbEmpNo) = 0 Or IsNull(Me.cbEmpNo) Or Me.cbEmpNo = "" Or Me.cbEmpNo = vbNullString Then
                MsgBox cboEmbNull, MsgStyl, strTitleMsg
            Else
                DoCmd.OpenReport "PrintSalaryOne", acViewPreview '
            End If
        Case Is = 3
             If Len(Me.RegReference) = 0 Or IsNull(Me.RegReference) Or Me.RegReference = "" Or Me.RegReference = vbNullString Then
                MsgBox cboMontNull, MsgStyl, strTitleMsg
            Else
                DoCmd.OpenReport "PrintSalaryAll_CasH", acViewPreview
            End If
        Case Is = 4
             If Len(Me.RegReference) = 0 Or IsNull(Me.RegReference) Or Me.RegReference = "" Or Me.RegReference = vbNullString Then
                MsgBox cboMontNull, MsgStyl
            Else
                DoCmd.OpenReport "PrintSalaryAll_Transfer", acViewPreview
            End If
    End Select

نسأل الله ان يتقبل منه 

قام بنشر
7 ساعات مضت, Eng.Qassim said:

Else ليس فيها End If

لا افهمك اخى الكريم الكود مظبوط فيه if و else ثم الاغلاق end if 

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