nssj قام بنشر أبريل 9, 2021 قام بنشر أبريل 9, 2021 الإخوة الكرام .. مطلوب استعلام لحذف سجلات معينة يتم تحديدها بالأرقام من () إلى () والترقيم من حقل (Tno) Tab02.accdb
nssj قام بنشر أبريل 9, 2021 الكاتب قام بنشر أبريل 9, 2021 شكراً لك أخي الكريم husamwahab ولكن رغبة في التعلم اسمح لي بسؤال: لماذا لم تستخدم استعلام الحذف أنا بالنظر لكوني مبتدئاً أشعر أن التعامل مع الاستعلام أسهل، لا سيما وهو في وضع التصميم، حيث أستطيع تغيير الجداول والحقول حسب الحاجة دون اللجوء للغة البرمجة (SQL)
husamwahab قام بنشر أبريل 9, 2021 قام بنشر أبريل 9, 2021 استاذي العزيز nssj بالخدمة الكود ماخوذ من استعلام حذف ووضعت قبله DoCmd.RunSQL Tab04.rar 1
nssj قام بنشر أبريل 9, 2021 الكاتب قام بنشر أبريل 9, 2021 شكراً لك على الإفادة أخي الكريم husamwahab وتطبيقا لما فهمته عدلت على استعلام الحذف بحيث أكتب فيه مباشرة أرقام الحذف المطلوبة، فأصبح بهذه الصورة وإلى هنا تم المطلوب بحمد الله، فجزاك الله خيراً وأحسن إليك ولكن .. أطمع بإجراء آخر إن كان بالإمكان وهو تحويل الكود الذي تفضلت به إلى وحدة نمطية ذكية أو كود ذكي، يتم استدعاؤه من أي نموذج، فيخرج هذا المربع [حذف من () إلى ()] وبمجرد كتابة الأرقام يقوم بالمهمة، دون الحاجة لكتابة كود لكل نموذج أو تغيير اسم النموذج، فهو يغير اسم النموذج بالنظر للنموذج الذي تم استدعاؤه منه، وفي جميع النماذج الأرقام المطلوبة هي تحت حقل باسم موحد (TNO) وفي الملف المرفق نموذجين للتطبيق عليهما إن كان هذا ممكنا Tab05.accdb
ابو جودي قام بنشر أبريل 9, 2021 قام بنشر أبريل 9, 2021 (معدل) 5 ساعات مضت, nssj said: شكراً لك على الإفادة أخي الكريم husamwahab وتطبيقا لما فهمته عدلت على استعلام الحذف بحيث أكتب فيه مباشرة أرقام الحذف المطلوبة، فأصبح بهذه الصورة وإلى هنا تم المطلوب بحمد الله، فجزاك الله خيراً وأحسن إليك ولكن .. أطمع بإجراء آخر إن كان بالإمكان وهو تحويل الكود الذي تفضلت به إلى وحدة نمطية ذكية أو كود ذكي، يتم استدعاؤه من أي نموذج، فيخرج هذا المربع [حذف من () إلى ()] وبمجرد كتابة الأرقام يقوم بالمهمة، دون الحاجة لكتابة كود لكل نموذج أو تغيير اسم النموذج، فهو يغير اسم النموذج بالنظر للنموذج الذي تم استدعاؤه منه، وفي جميع النماذج الأرقام المطلوبة هي تحت حقل باسم موحد (TNO) وفي الملف المرفق نموذجين للتطبيق عليهما إن كان هذا ممكنا Tab05.accdb 528 kB · 3 downloads السلام عليكم مشاركة مع استاذى الجليل واخى الحبيب @husamwahab ضع الكود الاتى فى موديول Function SpDelRec(ByVal strTableName As String, ByVal strFieldName As String) On Error GoTo ErrorHandler Const MyMsg = "Are you sure you wish to delete the records?" If MsgBox(MyMsg, vbYesNo + vbQuestion, "Confirm") = vbYes Then DoCmd.SetWarnings False DoCmd.RunSQL "DELETE [" & strTableName & "].* FROM [" & strTableName & "] WHERE ((([" & strTableName & "].[" & strFieldName & "]) Between [start delete from] And [To]))" DoCmd.SetWarnings True Else Exit Function End If ExitHere: On Error GoTo 0 Exit Function ErrorHandler: Select Case Err.Number Case Is = 2001, 3167 MsgBox "Action Aborted . " Case Else MsgBox Err.Description, , "ERROR " & Err.Number GoTo ExitHere End Select End Function وقم بعمل زر امر فى النموذج الذى تريد وضع الكود الاتى فى حدث عند النفر على الزر 'Call SpDelRec("Table Name", "Field Name") Call SpDelRec("TAB_RMZ", "TNO") وطبعا لأنك طلبت 5 ساعات مضت, nssj said: وحدة نمطية ذكية أو كود ذكي تم كتابة الروتين ليكون عام ومرن ليجعلك تكتب اسم الجدول الذى تريده مهما كان عدد الجدول فى كل زر امر اكتب الجدول الذى تختصه فى حذف السجلات منه وكذلك اسم الحقل جعلته مرنا تكتبه بكود زر الامر حتى ان كان اسماء الحقول مختلفة فى الجداول طبعا لا انسى أخص بالشكر استاذى الجليل ومعلمى القدير الأستاذ @jjafferr من أجل هذة الجزئية تحديدا [" & strTableName & "] جزاه الله هو وكل اساذتى الكرم كل الخيـر تقبل تحياتى تم تعديل أبريل 9, 2021 بواسطه ابا جودى 1 1
nssj قام بنشر أبريل 10, 2021 الكاتب قام بنشر أبريل 10, 2021 شكرا أخي الكريم ابا جودى على الإفادة ومن باب التطفل على موائد الكرام أضفت للكود عبارة (Me.Requery) حتى لا تظهر الصفوف المحذوفة # # ، فأصبح الكود هكذا Call SpDelRec("TAB_RMZ", "TNO") Me.Requery فهل هذا هو التصرف السليم والكود الذي تفضلت به أخي الكريم مريح جدا ومرن فبارك الله فيك، وهو مناسب تماما في حالة أن يكون حقل الترقيم مختلف في كل جدول أو نموذج .. لكن أيضاً رغبة في التعلم وحتى لا يبقى في ذهني تساؤلات: في مثل هذه الحالة التي يكون اسم حقل الترقيم وهو مجال عمل الكود موحدا في جميع الجداول والنماذج (TNO)، والمتغير الوحيد هو اسم الجدول، فهل يمكن في مثل هذه الحالة أن يعرف الكود بنفسه اسم الجدول الذي سيجري عليه العملية، يعني أن يأخذ اسم الجدول من مصدر بيانات النموذج الذي تم استدعاؤه منه
ابو جودي قام بنشر أبريل 10, 2021 قام بنشر أبريل 10, 2021 لا انت كده عاوز مصباح علاء الدين واعتقد كمان عاوز كود يعرف انت ناوى تمسح فبل ما يخطر على بالك انت هتمسح ايه مهو كود زكى بقه انتظر لما يجى لك مبرمج زكى يقول لك الحل لان انا لا مبرمج ولا زكى
nssj قام بنشر أبريل 10, 2021 الكاتب قام بنشر أبريل 10, 2021 22 دقائق مضت, ابا جودى said: انا لا مبرمج ولا زكى لأ هيك كثييير .. إذا كنت إنت مش مبرمج يعني أنا لسه مش مبتدئ 😁 والطلب اللي طلبتو .. طلبتو لأني شفت أكواد فيها نفس الفكرة .. أو نفس الذكاء .. بتجيب اسم الجدول لحالها بدون ما حدا يحكيلها ما تسألني وين هاي الأكواد .. لأني نسيت 🙃 1
أفضل إجابة husamwahab قام بنشر أبريل 10, 2021 أفضل إجابة قام بنشر أبريل 10, 2021 مشاركة مع استاذي العزيز ابا جودى كود جميل جدا عاشت ايدك استاذ ابا جودى بالنسبة لطلبك استاذ nssj تفضل هذا الكود Call SpDelRec(Me.RecordSource, "TNO") الكود اعلاه يعمل اذا كنت مختار مصدر بيانات نفس الجدول اي ليس على شكل استعلام وفيه شروط لان الاستعلام يحتاج الى كود لاستخراج اسم الجدول 2 1
ابو جودي قام بنشر أبريل 10, 2021 قام بنشر أبريل 10, 2021 13 دقائق مضت, husamwahab said: كود جميل جدا عاشت ايدك ابا جودى جزاكم الله خيـرا 13 دقائق مضت, husamwahab said: لان الاستعلام يحتاج الى كود لاستخراج اسم الجدول ممكن تتكرم بالكود بارك الله فيك
ابو جودي قام بنشر أبريل 10, 2021 قام بنشر أبريل 10, 2021 34 دقائق مضت, nssj said: لأ هيك كثييير .. إذا كنت إنت مش مبرمج يعني أنا لسه مش مبتدئ 😁 والطلب اللي طلبتو .. طلبتو لأني شفت أكواد فيها نفس الفكرة .. أو نفس الذكاء .. بتجيب اسم الجدول لحالها بدون ما حدا يحكيلها ما تسألني وين هاي الأكواد .. لأني نسيت 🙃 ماشى حظك حلو ماشاء الله جالك الأستاذ @husamwahab ومعاه مصباح علاء الدين حقق امانيك 1
nssj قام بنشر أبريل 10, 2021 الكاتب قام بنشر أبريل 10, 2021 20 دقائق مضت, ابا جودى said: ماشى حظك حلو ماشاء الله جالك الأستاذ @husamwahab ومعاه مصباح علاء الدين حقق امانيك الحمد لله .. ومصباح علاء الدين هذا إلك فيه دور أخي الكريم ابا جودى وكل الشكر للأخوين الكريمين husamwahab & ابا جودى وتم المطلوب بحمد الله والحاصل من كل ما سبق: تعلمتُ كيفية حذف سجلات من (..) إلى (..) عبر الاستعلام إذا احتجت لهذا الأمر في بعض الأحيان وإذا كنت أريد إدراج هذا الإجراء في النماذج لتكرار الحاجة إليه فأستخدم الوحدة النمطية، مع الأمر التالي إذا كان مصدر البيانات هو الجدول نفسه Call SpDelRec(Me.RecordSource, "TNO") Me.Requery أما إذا كان مصدر البيانات استعلام فأستخدم الأمر التالي Call SpDelRec("TAB_RMZ", "TNO") Me.Requery مع تغيير اسم الجدول حسب المطلوب 1
ابو جودي قام بنشر أبريل 10, 2021 قام بنشر أبريل 10, 2021 1 ساعه مضت, nssj said: الحمد لله .. ومصباح علاء الدين هذا إلك فيه دور أخي الكريم ابا جودى وكل الشكر للأخوين الكريمين husamwahab & ابا جودى ههههههههه اى اناا عفريت المصباح
husamwahab قام بنشر أبريل 10, 2021 قام بنشر أبريل 10, 2021 (معدل) 3 hours ago, ابا جودى said: ممكن تتكرم بالكود بارك الله فيك تفضل هذه المحاولة استاذ ابا جودى وانا الممنون ملاحظة : في الملف المرفق نموذج وفيه ثلاث ازرار كل زر يمثل مصدر سجلات افتراضي الكود منقول من احد المنتديات لاستخراج ثاني كلمة من نص وتم تعديله ليناسب المطلوب استاذ nssj لو تكرمت تعديل افضل اجابة للاستاذ ابا جودى DB.rar تم تعديل أبريل 10, 2021 بواسطه husamwahab 2
ابو جودي قام بنشر أبريل 10, 2021 قام بنشر أبريل 10, 2021 (معدل) 5 دقائق مضت, husamwahab said: تفضل هذه المحاولة استاذ ابا جودى وانا الممنون ملاحظة : في الملف المرفق نموذج وفيه ثلاث ازرار كل زر يمثل مصدر سجلات افتراضي استاذ nssj لو تكرمت تعديل افضل اجابة لـ ابا جودى جزاكم الله خيـــــرا استأذى الجليل عاجز هن شكركم كما تستحقون سأفحص المرفق الان ولكن أرجوكم عدك تغيير أفضل إجابة فأنا فقط استمتعت بالمشاركة معكم أستاذي الجليل وتعلمت منكم جزاكم الله خيرا ورزقكم البركة فى العمر والعلم والعمل والاهل والولد وشربة خنيئة من يد سيدنا ونبينا وحبيبنا صل الله عليه وعلى اله وسلم تم تعديل أبريل 10, 2021 بواسطه ابا جودى
husamwahab قام بنشر أبريل 10, 2021 قام بنشر أبريل 10, 2021 استاذ العزيز ابا جودى اولا رحم الله والديك على هذا الدعاء لاني محتاج دعاء جميع اخوتي جزاكم الله خير الجزاء ثانيا وعلى قول استاذنا الحبيب احمد انا تلميذ وبالكاد يحبو 1
ابو جودي قام بنشر أبريل 10, 2021 قام بنشر أبريل 10, 2021 53 دقائق مضت, husamwahab said: تفضل هذه المحاولة يا ابا جودى السلام عليكم ورحمة الله تعالى وبركاته استاذى الجليل ومعلمى القدير @husamwahab ولان الاستاذى الفاضل الكريم @nssj طلب كود ذكى هاهاهاهاها عجباني قوى كود ذكى دى وحضرتك تفضلت علينا جميعا بحلولك الرائعة وأكوادك الأروع أرد بضاعتكم اليكم بإعادة التكويد ليكون روتين عام داخل موديول ليسهل التعامل معه فى زوايا البرنامج سواء كان مصدر البيانات استعلام او جدول الكود داخل الموديول Public Function RcrdSrc(ByVal RecordSource As String) On Error GoTo ErrorHandler Dim FirstChar As Long Dim SecondChar As Long Dim XCount As Long RecordSource = Replace(RecordSource, ";", " ") FirstChar = InStr(RecordSource, "from") + 5 SecondChar = InStr(FirstChar, RecordSource, " ") XCount = SecondChar - FirstChar RcrdSrc = Mid(RecordSource, FirstChar, XCount) ExitHere: On Error GoTo 0 Exit Function ErrorHandler: Select Case Err.Number Case Is = 5 RcrdSrc = (RecordSource) Case Else MsgBox Err.Description, , "ERROR " & Err.Number GoTo ExitHere End Select End Function ولجلب مصدر البيانات يتم استخدام الكود الاتى MsgBox (RcrdSrc(RecordSource)) طبعا انا استخدمت فى الشرح صندوق رسائل كل واحد يضع الكود أينما يريد بدلا من صندوق الرسائل المستخدم فى للشرح هنا فقط DB(2).mdb 1
ابو جودي قام بنشر أبريل 10, 2021 قام بنشر أبريل 10, 2021 والان حتى تكتمل الفائدة المرفق النهائى يحتوى على جميع الافكار Tab05 (1).accdb 3
nssj قام بنشر أبريل 10, 2021 الكاتب قام بنشر أبريل 10, 2021 مع إني مش فاهم إشي من الكود 🙄 .. بس برضو أنا إلي دور في الموضوع .. بسبب السطر السحري إللي أضفتو Me.Requery 😂 😂 😂 1
ابو جودي قام بنشر أبريل 10, 2021 قام بنشر أبريل 10, 2021 2 ساعات مضت, nssj said: مع إني مش فاهم إشي من الكود 🙄 .. بس برضو أنا إلي دور في الموضوع .. بسبب السطر السحري إللي أضفتو Me.Requery 😂 😂 😂 طيب ايه بس ياللى مش فاهمه ؟
nssj قام بنشر أبريل 10, 2021 الكاتب قام بنشر أبريل 10, 2021 6 دقائق مضت, ابا جودى said: طيب ايه بس ياللى مش فاهمه ؟ السؤال المفروض يكون: طيب إيه بس اللي إنت فاهمه 😂 هاي الأكود (الذكية 😃) صعبة كثييييير علي .. أنا بالكاد ممكن أستوعب بعض الأكواد العادية
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.