محمد أبوعبدالله قام بنشر نوفمبر 8, 2019 قام بنشر نوفمبر 8, 2019 الاخوة الكرام السلام عليكم ورحمة الله وبركاته هل هناك بديل لــ IIF في الاستعلامات حيث اني لدي 10 شروط والاستعلام وهي كالتالي IIf([G1]<[R1]*.3;K1;IIf([G1]<[T1];"K1"; IIf([G2]<[R2]*.3;K2;IIf([G2]<[T2];"K2"; IIf([G3]<[R3]*.3;K3;IIf([G3]<[T3];"K3"; IIf([G4]<[R4]*.3;K4;IIf([G4]<[T4];"K4"; IIf([G5]<[R5]*.3;K5;IIf([G5]<[T5];"K5"; IIf([G6]<[R6]*.3;K6;IIf([G6]<[T6];"K6"; IIf([G7]<[R7]*.3;K7;IIf([G7]<[T7];"K7"; IIf([G8]<[R8]*.3;K8;IIf([G8]<[T8];"K8"; IIf([G9]<[R9]*.3;K9;IIf([G9]<[T9];"K9"; IIf([G10]<[R10]*.3;K10;IIf([G10]<[T10];"K10";"OK")))))))))))))))))))) والاستعلام يرقض كتابة باقي الصيغة فارجو ان يكون لدى الاخوة الكرام حل او بديل عن IIF لاستكمال المعادلة ولكم وافر الاتحية
jjafferr قام بنشر نوفمبر 8, 2019 قام بنشر نوفمبر 8, 2019 وعليكم السلام 🙂 استعمل وحدة نمطية ، زنادها من الاستعلام 🙂 جعفر
محمد أبوعبدالله قام بنشر نوفمبر 8, 2019 الكاتب قام بنشر نوفمبر 8, 2019 3 دقائق مضت, jjafferr said: استعمل وحدة نمطية استاذنا الفاضل بالنسبة للحقول G1 ; R1 ; K1 ... الخ كيف سيتم التعرف يها في الوحدة النمطية دمتم بالخيرات تحياتي
jjafferr قام بنشر نوفمبر 8, 2019 قام بنشر نوفمبر 8, 2019 تارة ممكن نرسل هذه البيانات من الاستعلام الى الوحدة النمطية ، وتارة ممكن نرسل ID السجل من الاستعلام ، ثم في الوحدة النمطية ننادي السجل بالكامل ، ونحصل منه على هذه البيانات ، هكذا: public function Add_All(myID) dim rst as dao.recordset set rst= currentdb.openrecordset ("Select * From myTable Where ID=" & myID) do while not rst.eof هنا ناخذ اسماء الحقول من الجدول if rst!G1 < rst!R1 then end if loop Add_All = myAnswer_back_to_the_query rst.close : set rst = nothing end function جعفر
jjafferr قام بنشر نوفمبر 8, 2019 قام بنشر نوفمبر 8, 2019 بالنسبة الى ارسال البيانات من الاستعلام الى الوحدة النمطية ، فتكون هكذا: A: myFunction([G1],[R1],K1,[T1],[G2],[R2]....) وفي الوحدة النمطية تستقبل هذه البيانات بنفس عدد المتغيرات ، هكذا: public function myFunction(G1,R1,K1,T1,G2,R2....) جعفر 1
محمد أبوعبدالله قام بنشر نوفمبر 8, 2019 الكاتب قام بنشر نوفمبر 8, 2019 الله يجزيك خير يا غالي ممكن تطبيق على المثال المرفق ولك وافر التحية والتقدير D3.rar
محمد أبوعبدالله قام بنشر نوفمبر 8, 2019 الكاتب قام بنشر نوفمبر 8, 2019 (معدل) معذرة المثال الاول ناقص حقل T UP-D3.rar تم تعديل نوفمبر 8, 2019 بواسطه محمد ابوعبد الله
jjafferr قام بنشر نوفمبر 8, 2019 قام بنشر نوفمبر 8, 2019 تفضل 🙂 هذا الاستعلام ، وبسبب ان عدد الحقول كثيرة اللي نرسلها للوحدة النمطية ، استعملت الطريقة الاولى 🙂 هكذا ننادي الوحدة النمطية: وهذه النتيجة: وهذه الوحدة النمطية: Public Function Add_All(ID As Long) As String On Error GoTo err_Add_All 'G1, R1, K1, G2, R2, K2, G3, R3, K3, G4, R4, K4, G5, R5, K5, G6, R6, K6, G7, R7, K7, G8, R8, K8, G9, R9, K9, G10, R10, K10 Dim rst As dao.Recordset Set rst = CurrentDb.OpenRecordset("Select * From tbl1 Where ID=" & ID) If Nz(rst!G1, 0) < Nz(rst!R1, 0) * 0.3 Then Add_All = Nz(rst!K1, 0) ElseIf Nz(rst!G1, 0) < Nz(rst!T1, 0) Then Add_All = "K1" ElseIf Nz(rst!G2, 0) < Nz(rst!R2, 0) * 0.3 Then Add_All = Nz(rst!K2, 0) ElseIf Nz(rst!G2, 0) < Nz(rst!T2, 0) Then Add_All = "K2" ElseIf Nz(rst!G3, 0) < Nz(rst!R3, 0) * 0.3 Then Add_All = Nz(rst!K3, 0) ElseIf Nz(rst!G3, 0) < Nz(rst!T3, 0) Then Add_All = "K3" ElseIf Nz(rst!G4, 0) < Nz(rst!R4, 0) * 0.3 Then Add_All = Nz(rst!K4, 0) ElseIf Nz(rst!G4, 0) < Nz(rst!T4, 0) Then Add_All = "K4" ElseIf Nz(rst!G5, 0) < Nz(rst!R5, 0) * 0.3 Then Add_All = Nz(rst!K5, 0) ElseIf Nz(rst!G5, 0) < Nz(rst!T5, 0) Then Add_All = "K5" ElseIf Nz(rst!G6, 0) < Nz(rst!R6, 0) * 0.3 Then Add_All = Nz(rst!K6, 0) ElseIf Nz(rst!G6, 0) < Nz(rst!T6, 0) Then Add_All = "K6" ElseIf Nz(rst!G7, 0) < Nz(rst!R7, 0) * 0.3 Then Add_All = Nz(rst!K7, 0) ElseIf Nz(rst!G7, 0) < Nz(rst!T7, 0) Then Add_All = "K7" ElseIf Nz(rst!G8, 0) < Nz(rst!R8, 0) * 0.3 Then Add_All = Nz(rst!K8, 0) ElseIf Nz(rst!G8, 0) < Nz(rst!T8, 0) Then Add_All = "K8" ElseIf Nz(rst!G9, 0) < Nz(rst!R9, 0) * 0.3 Then Add_All = Nz(rst!K9, 0) ElseIf Nz(rst!G9, 0) < Nz(rst!T9, 0) Then Add_All = "K9" ElseIf Nz(rst!G10, 0) < Nz(rst!R10, 0) * 0.3 Then Add_All = Nz(rst!K10, 0) ElseIf Nz(rst!G10, 0) < Nz(rst!T10, 0) Then Add_All = "K10" Else Add_All = "OK" End If Exit_Add_All: rst.Close: Set rst = Nothing Exit Function err_Add_All: If Err.Number = 3265 Then 'No field Add_All = "" Resume Exit_Add_All Else MsgBox Err.Number & vbCrLf & Err.Description End If End Function جعفر 1136.D3.accdb.zip 1
محمد أبوعبدالله قام بنشر نوفمبر 8, 2019 الكاتب قام بنشر نوفمبر 8, 2019 يا اخي والله يعجز اللسان عن الشكر جزاك الله خيرا اخي الحبيب الغالي دمتم بكل خير تحياتي
jjafferr قام بنشر نوفمبر 8, 2019 قام بنشر نوفمبر 8, 2019 حياك الله 🙂 بس اجابات الاستعلام كانت غريبه ، فهل حصلت على النتائج الصحيحة من واقع بياناتك؟ جعفر
محمد أبوعبدالله قام بنشر نوفمبر 8, 2019 الكاتب قام بنشر نوفمبر 8, 2019 ابشر التجربة الاولى نجحت والحمد لله اقوم الان بالتطبيق على الملف الخاص باليانات بشرك الله بالجنة
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.