-
Posts
583 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
25
نوع المحتوي
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
كل منشورات العضو متقاعد
-
هذا بعض مما لديك استاذ @ابو جودي صحيح كلامك استاذ العزيز @kanory تتوقف الاجابة على رد السائل او ارفاق مرفق واضح لما يريد فعله بالضبط مع ذلك اجدني ملزم بايضاح امر وهو ان مشاركاتي ليس الهدف منها تقديم دعم فني او معالجة مشكله في مرفق ولكن اجد استفسار معين ثم اضع رد لكيفية معالجة الامر من وجهة نظري وبابسط صورة ممكنه فان تم الاخذ به والا فليعتبر رفع للموضوع وفي احيان اخرى اجد استاذ قدير وضع حل احترافي يعجبني فاشارك بحل اخر وبابسط صورة ممكنه كاثراء للموضوع وليس بديلا للحل المحترف فالاساتذة في هذا الموقع اكبر من ان يعدل عملهم مبرمج سابق جل معلوماته قديمة وحلوله اكل الدهر عليها وشرب مع ذلك فان للعلم زكاة وزكاته بذله للناس وتعليمهم اياه اللهم اجعلنا واياكم ممن تعلم العلم وعلمه تحياتي وتقديري لك ولعل لنا لقاء في موضوع اخر 🌹
-
ماشي يا استاذة خلينا نتصور الامر حسب فهمي عندك 10 تقارير مبنية على استعلامين اثنين مثلا q_1 و q_2 وعندك فورمين اثنين كل فورم فية قائمة باسماء التقارير العشرة وعندك حقل نصي عند اختيار التقرير من القائمة يكتب اسمه في الحقل النصي وعند امر فتح التقرير يتم فتح التقرير المكتوب اسمه في الحقل النصي ويكون مصدر سجلاته الاستعلام q_1 طالما فتحناه من فورم 1 ويكون مصدرة q_2 اذا فتحناه من فورم2 اذا كان فهمي صحيح ممكنى عمل ذلك وبكود مختصر نحتاج الى متغير في بداية الاكواد اي يمكن استخدامه في كافة احداث النموذج Dim x As String في حدث بعد التحديث للقائمة نضع الامر التالي Me.tx2 = Me.c2.Column(0) x = Me.tx2 tx2 هو الحقل النصي co القائمة المنسدلة x هو المتغير في زر فتح التقرير نضع الامر التالي Dim strSQL As String strSQL = "q_1" DoCmd.OpenReport x, acViewPreview, , , , strSQL وفي النموذج الثاني نغير q_1 الى q_2 ثم نفتح التقارير في وضع التصميم وحدث فتح التقرير نضع الامر التالي Me.RecordSource = Me.OpenArgs واذا كنت لم افهم فاعتذر مقدما تحياتي
-
استاذي القدير قاسم الامر موجود ضمن اوامر فيجول بيسك وهو موجود بالصيغة الموضحة بالرد السابقة وايضا موجود ضمن اوامر RunCommand ولكن طريقة العمل تختلف الاول يغير الاسم مباشرة والاخر يحتاج الى "SelectObject" والفكرة تحديد الكائن و جعل الاسم قابل للتعديل اي انه اشبه ما يكون بتحديد جدول ثم النقر على f2 بلوحة المفاتيح . اما لماذا نلجأ لتغيير الاسم احيانا حدث معين يتطلب ذلك على كل حال بالنسبة للموضوع والحل المقدم من الاساتذة والذي يرتكز على حذف واعادة انشاء الاستعلام الا يؤدي الى زيادة حجم قاعدة البيانات على المدى البعيد حيث ان معلوماتي ان الاكسس لا يستعيد مساحة الكائن المحذوف الا بعد الضغط والاصلاح مع اعجابي بالفكرة تحياتي
-
نعم احسنت اخي قاسم الحقيقة ان الموضوع فعلا يحتاج ايضاح كما اشار مستر @Moosak على كل حال كمداخلة اخيرة الى ان تتضح الامور للاخوة نحتاج احيان الى اعادة تسمية كائن في قاعدة البيانات سواء كان جدول او استعلام او فورم او تقرير او وحدة نمطية ونرغب ان يتم التغيير عن طريق الكود DoCmd.Rename "r_2", acReport, "companies" في هذا الامر لدينا ثلاث معلمات NewName هنا يساوي r_2 ObjectType وهو نوع الكائن و هنا تقرير " بعض قدامي المبرمجين بدلا من تحديد نوع الكائن يضع القيمة للكائن وهنا رقم 3 " OldName وهو اسم التقرير القديم companies تحياتي ولنا لقاء في موضوع اخر
-
والله ياعم قاسم انا فهمي على قدي اذا اردنا متغيير عام نضع الامر التالي في بداية اي وحدة نمطية Public x As String ثم في امر فتح نضع x = "اسم التقرير" DoCmd.OpenReport x, acViewPreview
-
تمام عليك استاذ الفاضل @ناقل لو اردنا الاستغناء عن الحقل غير المنضم tx3 في بداية صفحة الاكواد نعلن عن متغير نصي هكذا والهدف ان نستخدم بدلا من الحقل النصي Dim tx As String وقيمته تكون tx = tx & "'" & Curr_Grp.Column(0) & "'," في امر طباعة نضع الامر If tx = "" Then MsgBox "لم تحدد السجلات المطلوبة من القائمة", , "رسالة": Exit Sub Dim k, w As String k = tx w = "st_mstr.Curr_Grp IN (" & Left(k, Len(k) - 1) & ")" DoCmd.OpenReport "r_1", acViewPreview, , w واضافة لتسهيل الغاء الاختيار نعمل زر امر نسمية الغاء مثلا ونضع فيه الامر Dim s As Variant tx = "" For Each s In Me.Curr_Grp.ItemsSelected Me.Curr_Grp.Selected(s) = False Next مع التحية والتقدير لاخي واستاذي ناقل والاعتذار ممن طلب وضع المثال حيث ان اتفاقي مع اخي جعفر ان يكون اهتمامي فقط للجانب النظري تحياتي
-
السؤال مبهم قليلا ولكن وفق فهمي للسؤال لديك تقرير اذا فتح التقرير من نموذج ا يكون اسم التقرير تقرير 1 مثلا ومصدر بياناته الجدول aa واذا فتحناه من نموذج ب يكون اسم التقرير تقرير 2 ومصدره استعلام 1 مثلا اذا كان فهمي صحيح ممكن استخدام البارامتر السادس في امر فتح التقرير حيث ان امر فتح يحتوي على سته معلمات بالترتيب ReportName View FilterName WhereCondition WindowMode OpenArgs والسادس هو مايهمنا والفكر ارسال قيمة محددة مع امر الفتح على سبيل المثال DoCmd.OpenReport "companies", acViewPreview, , , , 1 او هكذا DoCmd.OpenReport "companies", acViewPreview, OpenArgs:=1 وفي امر فتح للتقرير If Me.OpenArgs = 1 Then Me.Report.Caption = "test" Me.Report.RecordSource = "q_1" Else Me.Report.Caption = "kh" Me.Report.RecordSource = "companies" End If
-
الشكر لله اخي @saffar وممكن ايضا الاستغناء عن الحقل النصي الغير منضم من خلال اعلان متغيير نصي نحمل قيمته من خلال الاختيار من القائمة ويبقى الكود كما هو فقط نضع اسم المتغيير بدلا من اسم الحقل النصي . وكما اشرت في المشاركة السابقة ان الهدف تنويع الحلول وتبادل الافكار تحياتي
-
الاروع من ذلك حسن خلقكم استاذي الفاضل 🌹 ههههه والله انك لست بعيد عن جيل الطيبين اخي قاسم 🌹
-
" [gender] like '" & Nz(txtsearchgender, "*") & "'" هنا ☝️ لم نستخدم معيار النجمة مع دالة like وبالتالي لو كتبنا male سوف نحصل على اجابه صحيحة وكذلك لل female واستخدمنا النجمة فقط في كمعيار لدالة nz حتى يمكن تجاوز القيمة الخالية لحق الجنس من وجهة نظر مبرمج سابق حدث عند التغيير هو الاختيار الاسوء وبالذات لو اردت العمل من خلال الشبكة مع ذلك النفس وما تهوى ربما لم افهم ولكن نستخدم nz ويمكن استخدامها في مصدر القائمة بالتوفيق
-
مع التحية والتقدير للاستاذ محمد البرناوي على الحل الرائع ومن باب تعدد الحلول ولكوني من المدرسة القديمة ومن انصار استخدام مربعات النص لاختصار الاكواد فاني سوف اضع طريقة ليست منافسة للكود الرائع لاستاذنا الفاضل ولكن حل على طريقة الطيبين في البداية استخدمنا مربع نص غير منضم اسميته tx3 وقيمته تساوي Me.tx3 = tx3 & "'" & Curr_Grp.Column(0) & "'," ثم في زر الامر لفتح التقرير وضعنا الامر Dim k, w As String k = tx3 w = "st_mstr.Curr_Grp IN (" & Left(k, Len(k) - 1) & ")" DoCmd.OpenReport "r_1", acViewPreview, , w والنتيجة في الصورة تحياتي
-
اريد التنقل داخل خيارات القائمة بدون استخدام لوحة المفاتيح
متقاعد replied to Mohameddd200300's topic in قسم الأكسيس Access
للسهم اعلى DoCmd.GoToControl "نص1" SendKeys ("{up}") للسهم اسفل DoCmd.GoToControl "نص1" SendKeys ("{DOWN}") -
ههههههه في اللغة العربية تطلق كلمة شيخ على ثلاث الكبير في السن قال الله تعالى "قَالَتَا لَا نَسْقِي حَتَّىٰ يُصْدِرَ الرِّعَاءُ ۖ وَأَبُونَا شَيْخٌ كَبِيرٌ" الوجية في قومة ذو الرئاسة او الجاه عالم الدين على كل حال لو لم تتوفر في رقم 2 و3 يبقى رقم واحد تحياتي
-
عمل ممتاز استاذ قاسم نفس الفكرة ولكن لم اضع شرط عند كل معيار من وجهة نظري علامة النجمة ودالة nz تغني عن الشرط ولكن لكل شيخ طريقته استاذي قاسم ملاحظة صغيرة في طريقتك جرب تكتب الجنس Male ستجد انه سرد الذكور والاناث طريقتي ⬇️ Dim strWhere As String strWhere = "" strWhere = strWhere & " [stname] like '*" & txtsearchname & "*'" strWhere = strWhere & " and " & " [gender] like '" & Nz(txtsearchgender, "*") & "'" strWhere = strWhere & " and " & " [address] like '*" & txtsearchaddress & "*'" strWhere = strWhere & " and " & "[age] >= nz([tx2],1)" strWhere = strWhere & " and " & "[age] <= nz([tx4],99)" Me.frmstudent.Form.Filter = strWhere Me.frmstudent.Form.FilterOn = True هنا الفلترة في النموذج الفرعي ويبقى عملك الاجمل في جميع الاحوال تحياتي وتقديري
-
اخي العزيز سوف اشرح لك طريقتين للبحث المتعدد الاولى البحث في مربع القائمة وهو الموجود في مرفقك مع اني لا احبذ التعامل مع القوائم وافضل التعامل مع النماذج الفرعية في مثل هذه الحالات ولكن هذا امر اخر قبل شرح الطريقة اود ان اوضح ان مشاركاتي تهتم بالجانب النظري وليس العملي وبالتالي لن ارفق مثال واكتفي بالشرح فان استفدت من الشرح فالحمد لله والا تجاهل الرد واعتبر المشاركة رفع للموضوع الطريقة الاولى البحث في مربع قائمة ما يهمنا هنا هو الاستعلام مصدر بيانات القائمة نقوم باضافة حقل محسوب في الاستعلام نضع فيه الحقول التي سنستخدم معها معيار like هذا الحقل نجمع فيه حقل الاسم والجنس والمدينة وممكن اضافة اي حقول ماعدا حقل العمر وسوف نبين لماذا نستثنيه المهم قيمة هذا الحقل الذي جمعنا فيه الحقول تكون ⬇️ Expr1: [stname] & " " & [address] & " " & [gender] وفي خانة المعيار نضع التعبير التالي Like "*" & [Forms]![frmsearch]![txtsearchname] & "*" txtsearchname هو الحقل الذي سوف نبحث فيه عن الاسم او الجنس او المدينة ويمكن البحث باكثر من معيار في نفس السطر مثلا نكتب محمد ثم مسافة ثم البحيرة وهكذا الان حقل العمر انت ترغب البحث من عمر الى عمر مثلا من 16 الى 20 وهكذا وبالتالي لا نستطيع استخدام like ولكن نستخدم Between & and لذا في معيار حقل العمر في الاستعلام نضع التعبير التالي Between Nz([Forms]![frmsearch]![t2];0) And Nz([Forms]![frmsearch]![t4];99) t2 هو حقل من تاريخ t4 هو حقل الى تاريخ t2 & t4 هي حقول في النموذج استخدمنا دالة nz لتعوض في حقل من تاريخ عن القيمة null بالصفر وكذلك استخدمنا مع الحقل الى لتعطي القيمة 99 هل توجد طرق اخرى نعم توجد ولكن كل شيخ له طريقته الطريقة الثانية سوف اشرحها لاحقا و هي البحث المتعدد في النموذج الفرعي عن طريق الكود وليس الاستعلام وبكود بسيط مختصر من عدة اسطر تحياتي
-
مساعدة في اظافة رقم الصنف و رقم الاستدلالي عند اختيار الرتبة
متقاعد replied to nabilalibibo's topic in قسم الأكسيس Access
ياهلا باخي قاسم الامر هين اخي 🌹 -
مساعدة في اظافة رقم الصنف و رقم الاستدلالي عند اختيار الرتبة
متقاعد replied to nabilalibibo's topic in قسم الأكسيس Access
جرب المرفق nabilali2021.accdb -
قناه الاستاذ احمد من القنوات القليله الى اشاهدها فلديه افكار جميله واسلوبة بسيط وسلسل هذه ليست دعاية فانا ضد التعلم عن طريق اليوتيوب لان كثير من اصحاب القنوات هدفهم فقط العائد المادي اذكر حدهم قبل فترة طويلة طرح استفسار بدون مرفق وعندما شرحت الامر وارفقت مثال قام بانزاله في قناته ونسب المثال لنفسه ولكن عجز عن شرح الاكواد ولم يستطع الاجابة عن الاستفسارات المتابعين تحياتي لك استاذي الفاضل 🌹
-
(طلب) تعديل على كود تصدير حقول إلى الوورد
متقاعد replied to حامل المسك's topic in قسم الأكسيس Access
ماشاء الله يا @ابو البشر احسنت بارك الله فيك ................... وعالم متخفي -
من الاسم نجد الاجابة علائقية اي انها تتكون من مجموعة من الجداول يتم الربط بينها بعلاقات العلاقات تكون راس باطراف اي "واحد الى متعدد " راس براس " 1 الى 1" اي فهرس فريد غير قابل للتكرار الى مثيله اطراف باطراف " متعدد الى متعدد " وهذا النوع لا يمكن عمله الا بوجد جدول ثالث اي جدول وصل بين الجدولين المسطحة قاعدة بيانات بسيطة تحتوي على جدول واحد يتم تخزين كافة البيانات به وايضا قد يكون مجرد ملف نصي يتم تتخزين البيانات على شكل صفوف ويتم استخدام الفواصل او الرموز لفصل البيانات عن بعضها قبل سنوات عديدة وقبل ثورة برامج المنتديات التي تعتمد على قواعد البيانات كنا نقوم بعمل صفحات انترنت تسمح بتحديث بياناتها عن طريق المسئول عن الموقع و تخزن البيانات على ملف نصي وبدون الحاجة الى التعديل على الجهاز ثم اعادة رفع الملفات للموقع هذه صورة مبسطة عن الامر تحياتي لا اعلم عن خبرتك في الاكسل ولكن في اكسس اشهد لك بالتمكن تحياتي
-
يامرحبا بالمهندس قاسم انت استغنيت عن جدول المنطقة ووضعت الكل في جدول الدولة تمام عليك طيب لو اردنا ان نزيد قائمة باسماء الاحياء لكل مدينة وقائمة لكل مدارس الحي الخ النتيجة راح يكون لدينا ما يسمى بقاعدة بيانات مسطحة بينما اكسس قاعدة بيانات علائقية وهذه من اهم مميزاتها لذا الافضل من وجهة نظر مبرمج قديم ان يبقى جدول الدولة وجدول المنطقة واضافة حقل رقمي للربط بين هذة الجداول الاجابة : عن طريق الحقل الذي اشرنا اليه للربط بين الجداول هل يمكن عملها بدون وجود علاقة مباشرة نعم ممكن ولكن هذا موضوع اخر مرفق التعديل واضفت قائمة ثالثة بالاحياء مع الالتزام باجراء التعديل باسهل صورة ممكنه بعيد عن تعقيدات الاكواد تحياتي كومبوبوكس.accdb
-
صحيح ياعم احمد و لكن هنا نعطي افكار ولو بشكل غير مباشر على سبيل المثال بعد مشاركة المهندس @Eng.Qassim والحديث عن نماذج فرعية يكون قد نقل الحديث الى مسار اشمل ويدفع الاخرين في كيفية التعديل للاستفادة في تطبيقات اخرى منها تعديل الكود في نموذج الفاتورة وتغير الشرط بحيث لا يمكن تعديل بنود الفاتورة المرحلة او اي شرط نراه او عدم امكانية تعديل درجات الاختبار اذا اعتمدت نتيجة الاختبار وووو ... الخ من المؤكد ان هذه التعديل امرها يسير على كثير من رواد الموقع ولكن يبقى هنا من يستفيد من هذه الافكار تحياتي
-
صحيح اخي لذا انا ذكرت انه استخدام غير مالوف ولم اكتب انه استخدام خاطئ تحياتي وتقديري لك
-
مساعدة في طريقة تغيير حقل في جدول بناء على تحديث حقل بنموذج آخر
متقاعد replied to أحمد وجيه's topic in قسم الأكسيس Access
الشكر لله اخي احمد لكن لازم تنتبه اننا استخدمنا كود بيكون بطئ لو كان لديك عدد كبير من السجلات التي سيتم تحديثها في المره الواحدة يعني مثلا بتنقل عشرات الموظفين في كل حركة نقل لذا ارفق لك تعديل باذن الله بيكون اسرع وان شاء الله ما تواجه فيه اي مشاكل إدارة المشاريع(1).accdb -
مساعدة في طريقة تغيير حقل في جدول بناء على تحديث حقل بنموذج آخر
متقاعد replied to أحمد وجيه's topic in قسم الأكسيس Access
جرب الان واعتذر لعدم تمكني من المراجعة حيث تم التعديل بشكل عاجل تحياتي إدارة المشاريع.accdb