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

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

قام بنشر

هل من حل 

عندما لا يكون فيه ايه بيانات يفتح التقرير (1) فارغ 
 وإذا كانت هناك بيانات فيتم نقلي الى التقرير رقم ( 2 )

قام بنشر

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

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

بالتوفيق

  • Like 1
قام بنشر
  في 23‏/4‏/2022 at 00:30, حسام نصير said:

للتواصل واتس 

01121119958

Expand  

هذا مخالف 

 

يمكن ان تستخدم داله if 

مثل

   If IsNull(المعيار) Then
   الحالة الاولى
   Else
   الحالة الثانيه
   End If

 

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

ظننت انه تم الاجابه فعليا فدخلت لاطلع على الاجابه لاستزيد من العلم

فوجدت بان السائل قد اختار افضل اجابه ع السؤال نفسه

فنوضح له بارك الله فيه بان افضل اجابه توضع لمن اجابك او لنفسك اذا كنت وصلت للاجابه بنفسك ووضعتها لاخوانك لتعم الفائده

وعلى العموم تفضل هذه محاولتى لفهم المطلوب

جرب ع العميل 33335555444 فهذا ليس له ديون كما اشرت بالمشاركه السابقه

If Nz(DLookup("mtRole", "listecont", "code='" & Forms!Chrche_Filter!code & "'"), 0) <> 0 Then

    DoCmd.OpenReport "data", acViewPreview, , x
Else
    DoCmd.OpenReport "nodata", acViewPreview, , x
End If

 

بالتوفيق

Database10_1.accdbFetching info...

قام بنشر

لنفترض انه فيه ثلاثة شروط

اذا لم يكن هناك بيانات يفتح التقرير 1 واذا كان فيه بيانات و اقل من 17 بيان ينتقل الى التقرير 2 واذا كان اكثر من 17 بيان ينتقل الى التقرير 3

قام بنشر
  في 23‏/4‏/2022 at 22:02, احمد الفلاحجي said:

ظننت انه تم الاجابه فعليا فدخلت لاطلع على الاجابه لاستزيد من العلم

فوجدت بان السائل قد اختار افضل اجابه ع السؤال نفسه

فنوضح له بارك الله فيه بان افضل اجابه توضع لمن اجابك او لنفسك اذا كنت وصلت للاجابه بنفسك ووضعتها لاخوانك لتعم الفائده

وعلى العموم تفضل هذه محاولتى لفهم المطلوب

جرب ع العميل 33335555444 فهذا ليس له ديون كما اشرت بالمشاركه السابقه

If Nz(DLookup("mtRole", "listecont", "code='" & Forms!Chrche_Filter!code & "'"), 0) <> 0 Then

    DoCmd.OpenReport "data", acViewPreview, , x
Else
    DoCmd.OpenReport "nodata", acViewPreview, , x
End If

 

بالتوفيق

Database10_1.accdb 492 kB · 1 download

Expand  

لنفترض انه فيه ثلاثة شروط

اذا لم يكن هناك بيانات يفتح التقرير 1 واذا كان فيه بيانات و اقل من 17 بيان ينتقل الى التقرير 2 واذا كان اكثر من 17 بيان ينتقل الى التقرير 3

قام بنشر
  في 24‏/4‏/2022 at 01:41, alloui79 said:

لنفترض انه فيه ثلاثة شروط

اذا لم يكن هناك بيانات يفتح التقرير 1 واذا كان فيه بيانات و اقل من 17 بيان ينتقل الى التقرير 2 واذا كان اكثر من 17 بيان ينتقل الى التقرير 3

Expand  

ممكن تجرب هذا 

Private Sub Commande24_Click()
Dim varcode As String
Dim vars As String
Dim ContRec As Integer
ContRec = DCount("code", "listecont", "[code]='" & Me.code & "'")
Debug.Print "ContRec >> " & ContRec


If Me.code.Value <> "" Then
varcode = "'" & Me.code.Value & "'"


If x <> "" Then
x = x & " and "
End If

x = x & "code = " & varcode & " "
End If

'If Nz(DLookup("mtRole", "listecont", "code='" & Forms!Chrche_Filter!code & "'"), 0) <> 0 Then
'
'    DoCmd.OpenReport "data", acViewPreview, , x
'Else
'    DoCmd.OpenReport "nodata", acViewPreview, , x
'End If

If ContRec <= 0 Then
 DoCmd.OpenReport "nodata", acViewPreview, , x
ElseIf ContRec >= 1 And ContRec <= 17 Then
 DoCmd.OpenReport "data", acViewPreview, , x
ElseIf ContRec >= 18 And ContRec <= 999999999 Then
 DoCmd.OpenReport "data", acViewPreview, , x
End If

End Sub

 

طبعا لا تنسي ان تعدل فى اسماء التقارير 

حسب ما تريد 

 

  • Thanks 1
قام بنشر

مشكور استاذ عمر وضاحي نجحت الفكر تسلم اخي

للاسف بعد ماتاكدة جيدا اتضح بعد التجربة ان لم ينجع مع التقرير 1 الفارغ ولم يظهر ارجو التحقق من الكود 

  في 24‏/4‏/2022 at 01:41, alloui79 said:
  15 ساعات مضت, alloui79 said:

لنفترض انه فيه ثلاثة شروط

اذا لم يكن هناك بيانات يفتح التقرير 1 واذا كان فيه بيانات و اقل من 17 بيان ينتقل الى التقرير 2 واذا كان اكثر من 17 بيان ينتقل الى التقرير 3

ممكن تجرب هذا 

Private Sub Commande24_Click()
Dim varcode As String
Dim vars As String
Dim ContRec As Integer
ContRec = DCount("code", "listecont", "[code]='" & Me.code & "'")
Debug.Print "ContRec >> " & ContRec


If Me.code.Value <> "" Then
varcode = "'" & Me.code.Value & "'"


If x <> "" Then
x = x & " and "
End If

x = x & "code = " & varcode & " "
End If

'If Nz(DLookup("mtRole", "listecont", "code='" & Forms!Chrche_Filter!code & "'"), 0) <> 0 Then
'
'    DoCmd.OpenReport "data", acViewPreview, , x
'Else
'    DoCmd.OpenReport "nodata", acViewPreview, , x
'End If

If ContRec <= 0 Then
 DoCmd.OpenReport "nodata", acViewPreview, , x
ElseIf ContRec >= 1 And ContRec <= 17 Then
 DoCmd.OpenReport "data", acViewPreview, , x
ElseIf ContRec >= 18 And ContRec <= 999999999 Then
 DoCmd.OpenReport "data", acViewPreview, , x
End If

End Sub
قام بنشر
  في 24‏/4‏/2022 at 17:21, alloui79 said:

مشكور استاذ عمر وضاحي نجحت الفكر تسلم اخي

للاسف بعد ماتاكدة جيدا اتضح بعد التجربة ان لم ينجع مع التقرير 1 الفارغ ولم يظهر ارجو التحقق من الكود 

  في 24‏/4‏/2022 at 01:41, alloui79 said:
  15 ساعات مضت, alloui79 said:

لنفترض انه فيه ثلاثة شروط

اذا لم يكن هناك بيانات يفتح التقرير 1 واذا كان فيه بيانات و اقل من 17 بيان ينتقل الى التقرير 2 واذا كان اكثر من 17 بيان ينتقل الى التقرير 3

ممكن تجرب هذا 

Private Sub Commande24_Click()
Dim varcode As String
Dim vars As String
Dim ContRec As Integer
ContRec = DCount("code", "listecont", "[code]='" & Me.code & "'")
Debug.Print "ContRec >> " & ContRec


If Me.code.Value <> "" Then
varcode = "'" & Me.code.Value & "'"


If x <> "" Then
x = x & " and "
End If

x = x & "code = " & varcode & " "
End If

'If Nz(DLookup("mtRole", "listecont", "code='" & Forms!Chrche_Filter!code & "'"), 0) <> 0 Then
'
'    DoCmd.OpenReport "data", acViewPreview, , x
'Else
'    DoCmd.OpenReport "nodata", acViewPreview, , x
'End If

If ContRec <= 0 Then
 DoCmd.OpenReport "nodata", acViewPreview, , x
ElseIf ContRec >= 1 And ContRec <= 17 Then
 DoCmd.OpenReport "data", acViewPreview, , x
ElseIf ContRec >= 18 And ContRec <= 999999999 Then
 DoCmd.OpenReport "data", acViewPreview, , x
End If

End Sub
Expand  

ايه المعيار ال حضرتك تريده 

هل هو عدد السجلات 

ام اجمالى الدين للعميل ؟

قام بنشر

اتفضل هذا التعديل

Private Sub Commande24_Click()
Dim varcode As String
Dim vars As String
Dim ContRec As Integer
Dim DlookupRec As String
DlookupRec = Nz(DLookup("mtRole", "listecont", "code='" & Forms!Chrche_Filter!code & "'"), 0)
ContRec = DCount("code", "listecont", "[code]='" & Me.code & "'")
Debug.Print "ContRec >> " & ContRec
Debug.Print "DlookupRec >> " & DlookupRec

If Me.code.Value <> "" Then
varcode = "'" & Me.code.Value & "'"


If x <> "" Then
x = x & " and "
End If

x = x & "code = " & varcode & " "
End If

'If Nz(DLookup("mtRole", "listecont", "code='" & Forms!Chrche_Filter!code & "'"), 0) <> 0 Then
'
'    DoCmd.OpenReport "data", acViewPreview, , x
'Else
'    DoCmd.OpenReport "nodata", acViewPreview, , x
'End If

If (ContRec <> 0) And (DlookupRec = 0) Then
 DoCmd.OpenReport "nodata", acViewPreview, , x
ElseIf (ContRec >= 1 And ContRec <= 3) And (DlookupRec <> 0) Then
 DoCmd.OpenReport "data_01_3", acViewPreview, , x
ElseIf (ContRec >= 4 And ContRec <= 9999) And (DlookupRec <> 0) Then
 DoCmd.OpenReport "data_4_9999", acViewPreview, , x
End If

End Sub

 

ايضا المرفق

 

Database10_1.rarFetching info...

تم وضع معيارين معا 

واتمنى ان اكون قد وضحت الفكره لك 

وانك فهمت الكود كيف يعمل 

واذا كان هناك شئ غير مفهوم تفضل وسوف اشرحه لك او يشرحه لك اى شخص هنا 

  • Thanks 1
قام بنشر

للاسف بعد ماتاكدة جيدا اتضح بعد التجربة ان لم ينجع مع التقرير 1 الفارغ ولم يظهر ارجو التحقق من الكود 

  في 24‏/4‏/2022 at 01:41, alloui79 said:
  15 ساعات مضت, alloui79 said:

لنفترض انه فيه ثلاثة شروط

اذا لم يكن هناك بيانات يفتح التقرير 1 واذا كان فيه بيانات و اقل من 17 بيان ينتقل الى التقرير 2 واذا كان اكثر من 17 بيان ينتقل الى التقرير 3

ممكن تجرب هذا 

Private Sub Commande24_Click()
Dim varcode As String
Dim vars As String
Dim ContRec As Integer
ContRec = DCount("code", "listecont", "[code]='" & Me.code & "'")
Debug.Print "ContRec >> " & ContRec


If Me.code.Value <> "" Then
varcode = "'" & Me.code.Value & "'"


If x <> "" Then
x = x & " and "
End If

x = x & "code = " & varcode & " "
End If

'If Nz(DLookup("mtRole", "listecont", "code='" & Forms!Chrche_Filter!code & "'"), 0) <> 0 Then
'
'    DoCmd.OpenReport "data", acViewPreview, , x
'Else
'    DoCmd.OpenReport "nodata", acViewPreview, , x
'End If

If ContRec <= 0 Then
 DoCmd.OpenReport "nodata", acViewPreview, , x
ElseIf ContRec >= 1 And ContRec <= 17 Then
 DoCmd.OpenReport "data", acViewPreview, , x
ElseIf ContRec >= 18 And ContRec <= 999999999 Then
 DoCmd.OpenReport "data", acViewPreview, , x
End If

End Sub

شكرا لك اخ عمر ضاحي فلا هذه المرة اشتغل معايا 

قام بنشر

 

  في 24‏/4‏/2022 at 22:09, alloui79 said:

للاسف بعد ماتاكدة جيدا اتضح بعد التجربة ان لم ينجع مع التقرير 1 الفارغ ولم يظهر ارجو التحقق من الكود 

  في 24‏/4‏/2022 at 01:41, alloui79 said:
  15 ساعات مضت, alloui79 said:

لنفترض انه فيه ثلاثة شروط

اذا لم يكن هناك بيانات يفتح التقرير 1 واذا كان فيه بيانات و اقل من 17 بيان ينتقل الى التقرير 2 واذا كان اكثر من 17 بيان ينتقل الى التقرير 3

ممكن تجرب هذا 

Private Sub Commande24_Click()
Dim varcode As String
Dim vars As String
Dim ContRec As Integer
ContRec = DCount("code", "listecont", "[code]='" & Me.code & "'")
Debug.Print "ContRec >> " & ContRec


If Me.code.Value <> "" Then
varcode = "'" & Me.code.Value & "'"


If x <> "" Then
x = x & " and "
End If

x = x & "code = " & varcode & " "
End If

'If Nz(DLookup("mtRole", "listecont", "code='" & Forms!Chrche_Filter!code & "'"), 0) <> 0 Then
'
'    DoCmd.OpenReport "data", acViewPreview, , x
'Else
'    DoCmd.OpenReport "nodata", acViewPreview, , x
'End If

If ContRec <= 0 Then
 DoCmd.OpenReport "nodata", acViewPreview, , x
ElseIf ContRec >= 1 And ContRec <= 17 Then
 DoCmd.OpenReport "data", acViewPreview, , x
ElseIf ContRec >= 18 And ContRec <= 999999999 Then
 DoCmd.OpenReport "data", acViewPreview, , x
End If

End Sub

شكرا لك اخ عمر ضاحي فلا هذه المرة اشتغل معايا 

Expand  

هل جربت هذا الحل ؟

  في 24‏/4‏/2022 at 17:57, عمر ضاحى said:

اتفضل هذا التعديل

Private Sub Commande24_Click()
Dim varcode As String
Dim vars As String
Dim ContRec As Integer
Dim DlookupRec As String
DlookupRec = Nz(DLookup("mtRole", "listecont", "code='" & Forms!Chrche_Filter!code & "'"), 0)
ContRec = DCount("code", "listecont", "[code]='" & Me.code & "'")
Debug.Print "ContRec >> " & ContRec
Debug.Print "DlookupRec >> " & DlookupRec

If Me.code.Value <> "" Then
varcode = "'" & Me.code.Value & "'"


If x <> "" Then
x = x & " and "
End If

x = x & "code = " & varcode & " "
End If

'If Nz(DLookup("mtRole", "listecont", "code='" & Forms!Chrche_Filter!code & "'"), 0) <> 0 Then
'
'    DoCmd.OpenReport "data", acViewPreview, , x
'Else
'    DoCmd.OpenReport "nodata", acViewPreview, , x
'End If

If (ContRec <> 0) And (DlookupRec = 0) Then
 DoCmd.OpenReport "nodata", acViewPreview, , x
ElseIf (ContRec >= 1 And ContRec <= 3) And (DlookupRec <> 0) Then
 DoCmd.OpenReport "data_01_3", acViewPreview, , x
ElseIf (ContRec >= 4 And ContRec <= 9999) And (DlookupRec <> 0) Then
 DoCmd.OpenReport "data_4_9999", acViewPreview, , x
End If

End Sub

 

ايضا المرفق

 

Database10_1.rar 45.84 kB · 1 download

تم وضع معيارين معا 

واتمنى ان اكون قد وضحت الفكره لك 

وانك فهمت الكود كيف يعمل 

واذا كان هناك شئ غير مفهوم تفضل وسوف اشرحه لك او يشرحه لك اى شخص هنا 

Expand  

 

قام بنشر
  في 25‏/4‏/2022 at 14:55, احمد الفلاحجي said:

احسنت اخى @عمر ضاحى وجزاك الله خيرا عالمتابعه 🌹

بالتوفيق

 

 

Expand  

بارك الله فيك استاذي

هذا كله بفضل تعليم اساتذتى فى المنتدي 

بارك الله فيهم وحفظهم من كل سوء 

وما ارانا الله فيهم شر وبارك الله لهم فى عافيتهم ومالهم وعلمهم 

 

  • Like 1
قام بنشر

وفيك بارك الله وانا اخوك ولست باستاذ

جزاهم الله عنا كل خير

والسؤال للاخ السائل كيفيه معرفه من ليس له ديون حتى يتم تنفيذ الشرط الاساسى لك والباقى فقد قدمه لك اخى @عمر ضاحى

  في 23‏/4‏/2022 at 21:42, alloui79 said:

التقرير الفارغ يعني ان ليس له ديون ةيظهر فيه عبارة لا شيئ

Expand  

لان فى حلى الاول فهو ليس بحل ولكن وضعته كمحاوله للوصول للمطلوب

ولكن داله dlookUp سوف تاتى باول سجل مطابق للشروط ويمكن لديه سجلات اخرى وعليه ديون

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

بالتوفيق

  • Like 1

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