-
Posts
2414 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
65
Moosak last won the day on سبتمبر 3
Moosak had the most liked content!
السمعه بالموقع
2603 Excellentعن العضو Moosak

البيانات الشخصية
-
Gender (Ar)
ذكر
-
Job Title
Graphics Designer, Programmer
-
البلد
Oman
-
الإهتمامات
التصميم الجرافيكي ، الأكسس ، VBA
وسائل التواصل
-
MSN
https://www.youtube.com/c/MousaAlKalbani
-
Website URL
https://www.instagram.com/mousa.alkalbani
-
Yahoo
mousa.alkalbani@gmail.com
اخر الزوار
17754 زياره للملف الشخصي
-
مساعدة مساعدة بخصوص تطبيق ماكرو على الجداول بشكل برمجي وليس يدوي
Moosak replied to Foksh's topic in قسم الأكسيس Access
تحياتي وسلامي لك أخي منتصر 🙂 الحقيقة أن هذه الفكرة سبق أن عرضها معلمنا الكبير @jjafferr في هذه المواضيع 👈 سِحر جداول الاكسس في تسجيل الوقائع و سِحر جداول الاكسس في تسجيل الوقائع عن طريق Tables Data Macro لذلك أحس أني عندي فكرة بسيطة عن هذه الميزة .. طبعا الموديول كاملا تم تصميمه عن طريق أداة موجهة بالذكاء الاصطناعي ولعلي أطرحها قريبا إن شاء الله .. والإجابة المباشرة على سؤالك هي : لا لن يؤثر التغيير الذي عملته على عمل الدوال الأخرى في الموديول .. ومن الخير ما فعلت .. حيث كانت دواعي إنشاء تلك الوظيفة (الدالة) هي ضبط الأكواد الرئيسية (تطبيق وفك الحماية عن الجداول) والتأكد من سلامتها .. ولكن أنت فعلت فائدتها للتأكد من وجود الحماية قبل تطبيقها وهذه فطنة منك 👍🙂 جواب هذا السؤال ستحصل عليه بعدما تتعمق في حوار الماكرو هذا .. وضني بك من خلال سهرة البارحة أنك قد عرفت الجواب فعلا 😅🖐️ ننتظر مفاجآتك -
مساعدة مساعدة بخصوص تطبيق ماكرو على الجداول بشكل برمجي وليس يدوي
Moosak replied to Foksh's topic in قسم الأكسيس Access
حبيبنا .. أنت الآن تمسك الأداة الأساسية بيدك .. وباقي أنك تبدع في استخدامها بعدة أشكال 😁👌 واحد من الحلول : تستدعي دالة فك الحماية في زر الحفظ قبل أمر الحفظ وتعيد الحماية بعد تأكيد الحفظ .. بكذا تضمن أن الحماية تشتغل في الجداول فقط 👍🏻🙂 هذي بلمسة بسيطة من أيدك الكريمة وتكون محلولة قدامك .. 😅🖐🏻 هم سطرين لوووب تكتبهم يطبقولك الدالة على كل الجداول 😎 -
مساعدة مساعدة بخصوص تطبيق ماكرو على الجداول بشكل برمجي وليس يدوي
Moosak replied to Foksh's topic in قسم الأكسيس Access
تفضل عمي فادي .. جرب 🙂 : TblMacroVBA.accdb لتطبيق الحماية أو إزالتها على جدول أو مجموعة جداول : ' Usage (from VBA Immediate Window or code): ' ApplyTableProtection "Tbl_Cust" ' single table ' ApplyTableProtection "Tbl_Cust", "Tbl_Orders" ' multiple tables ' ' RemoveTableProtection "Tbl_Cust" ' RemoveTableProtection "Tbl_Cust", "Tbl_Orders" -
قوائم مختصرة ⭐ هدية ~ صانع القوائم المختصرة 2026 ⭐
Moosak replied to Foksh's topic in قسم الأكسيس Access
شكرا .. شكرا .. شكرا .. يوافي حق هذا الإبداع .. ما شاء الله زدت الحلاوة حلا ما شاء الله عليك 🌼 رزقك الله خير ما في الدنيا وأفضل ما في الآخرة .. وأحسن الله إليك ولكل من تحب .. 💖 يظهر من مشاركة الأستاذ @أحمد العيسى أن هناك العشرات من الأيقونات التي لم يتم إضافتها بعد 😅🖐️ وأيضا هناك ملاحظة بسيطة جدا .. وهي أنه بعد تعيين الأيقونات والضغط على زر المعاينة فإن التغيير لا يظهر مباشرة إلا بعد أن يتم حفظ القائمة .. حفظك الله 🙂- 62 replies
-
- 1
-
-
شكرا لجمال روحك أيها النقي 😊🌷 تعمل بكل كفاءة ما شاء الله 😎👌⭐
- 17 replies
-
- 1
-
-
- shortcut menu
- القائمة المختصرة
-
(و2 أكثر)
موسوم بكلمه :
-
فقط لدي ملحوظة بسيطة بعد التطبيق العملي .. 🙂 عند حفظ الأداة كإضافة للبرنامج .. وعند تطبيق الأكواد على قاعدة جديدة فإنها لا تعمل بسبب أنها لا تحتوي على الموديولين التابعين لها وهذا سيحوجك إلى استيرادهما من ملف القالب () ويعيدنا إلى نقطة الإنطلاق من البداية 😅 (بمعنى أنني لازلت محتاج يكون هذا الملف موجود جنبي) ! السؤال هو : هل يمكن إدراج الموديولين تلقائيا في القاعدة التي يتم استخدام الأداة فيها ؟
- 17 replies
-
- 1
-
-
- shortcut menu
- القائمة المختصرة
-
(و2 أكثر)
موسوم بكلمه :
-
الله .. الله .. الله أحييك أخي منتصر على الإضافات الأخيرة بصراحة شي خيال ما شاء الله تبارك الله .. 😇 وخصوصا نموذج الأيقونات عجيييييب ويختصر للمستخدم عملية البحث .. شي متعوب عليه فعلا .. بارك الله فيك .. سير ياشيخ الله يوفقك دنيا وآخرة يارب 🤲
- 17 replies
-
- shortcut menu
- القائمة المختصرة
-
(و2 أكثر)
موسوم بكلمه :
-
ما شا الله عليك أخي منتصر .. موسوعة عامرة بالأفكار الرائعة 😊👌🌼 كنت أستخدم القوائم المنسدلة لعمل هذه الخيارات .. والآن سهلت علي الأمر .. جزاك الله عنا كل خير .......................................................... فقط ملاحظة بسيطة .. أنه عند الضغط خارج المجموعة يتم تفعيل الخيار الأول من القائمة .. والأصل أنه يخرج من الدالة ..
- 17 replies
-
- shortcut menu
- القائمة المختصرة
-
(و2 أكثر)
موسوم بكلمه :
-
وعليكم السلام ورحمة الله وبركاته .. 🙂 حسب الظاهر أنه توجد لديك سجلات محذوفة في المنتصف وهذا سبب اختلاف الأرقام .. والعدد الذي يظهر في الأسفل هو رقم ترتيب السجل بين السجلات .. وليس له علاقة برقم السجل في حقل الترقيم التلقائي أو حتى الترقيم اليدوي .. ولو أردت أن تجعلهما متساويين .. ممكن تستخدم هذي الدالة اللي تعطيك أيضا ترتيب السجل بين السجلات حتى لو تم فلترة السجلات على شروط محددة .. *كود RowNum لعمل ترقيم متسلسل للسجلات في النموذج المستمر أو المفرد في حقل غير منظم* *شرح الكود:* يوضع في موديول منفصل .. ثم في حقل المسلسل في النموذج ويكون حقل غير منظم يكتب في مصدر بياناته هكذ : =RowNum([Form]) *الكود:* Public Function RowNum(frm As Form) As Variant On Error GoTo Err_RowNum 'Purpose: Numbering the rows on a form. 'Usage: Text box with ControlSource of: =RowNum([Form]) With frm.RecordsetClone .Bookmark = frm.Bookmark RowNum = .AbsolutePosition + 1 End With Exit_RowNum: Exit Function Err_RowNum: If Err.Number <> 3021& Then 'Ignore "No bookmark" at new row. Debug.Print "RowNum() error " & Err.Number & " - " & Err.Description End If RowNum = Null Resume Exit_RowNum End Function *طريقة الاستدعاء (الاستخدام):* =RowNum([Form]) تكتب نصا كما هي *مرجع:* #https://www.officena.net/ib/topic/117111-%D9%85%D8%B3%D9%84%D8%B3%D9%84-%D9%84%D9%84%D8%B5%D9%86%D9%81-%D9%81%D9%8A-%D8%A7%D9%84%D9%86%D9%85%D9%88%D8%B0%D8%AC/#comment-705668 *مكتبة الأكواد*
-
سؤال نقاشي .. هل من الممكن تشغيل ملف Accde واحد بنواتين ( 32 و 64 )🤔
Moosak replied to Foksh's topic in قسم الأكسيس Access
كالعادة حبيبنا ،، أنت نزل البتاع وإحنا نجرب 😁.. والأخطاء أو النواقص بتطلع من نفسها 😇🖐️ وبهذي الطريقة بتكتمل التكة الباقية إن شاء الله .. صعب ندخل معاك عالخط من النهاية بعد ما قطعت شوط طويل من البحث والتجربة 🙃 (اطمن) إحنا بندعيلك بالتوفيق والتيسير 😅🤲 -
هل يمكن إضافة خيار : (ربط تلقائي للقاعدة الأمامية بالقاعدة الخلفية) ؟ أرسلته لك على الخاص .. وشكلك حليتها بكل سهولة ..
-
لا لا أخي الحبيب .. التجربة كانت على برنامجي الخاص الأداة بشكلها الحالي كالعروس في خدرها .. وما تزيده فمن كرمك وإحسانك 😊🌼
-
وعليكم السلام ورحمة الله وبركاته 🙂 إبداع حقيقي بجد ما شاء الله .. >>> يدخل حيز الاعتماد مباشرة بوركت يمناك أبا وسام .. طريقتك في التنفيذ بحد ذاتها مميزة ما شاء الله .. ⭐ بعد التجربة هي كم ملاحظة بسيطة إن شاء الله .. 🖐️ الأولى : هنا اخترت عدم إنشاء أيقونة في قائمة إبدأ .. إلا أنه تأتي منضمن الخيارات عند التنصيب ! >>> الثانية : عندما أختار التحويل إلى Accde تظهر رسالة الخطأ التالية مع تأكدي من عدم وجود أي من الأسباب المذكورة .. >>> الثالثة : في صفحة مشغل أكسس والإخصارات ، هل علي أن أحمل الأكسس رنتايم لكي يضمنه في الحزمة ؟ وهل خيارات وسائط التشغيل مقرونة بوجود الأكسس رن تايم فقط ؟ لأنني أردت تقفيل البرنامج عن طريق الأداة بمنع الشفت وإخفاء الأكس ولكن كل ذالك لم يحصل 😅 .. الرابعة ( وهي مجرد مقترح أو إضافة ) : كانت هناك ميزة في الوينرار عند استخدامه للتحزيم وهي : تشغيل (ملف معين/ملفات معينة) من ضمن الحزمة (قبل / أو بعد ) عملية التنصيب .. وهذه قد تفيد في تشغيل أوامر مخصصة قبل فتح البرنامج أو عرض تعليمات معينة للمستخدم أو .. أو .. وتطبيق هذه راجع إليك طبعا وسلامة راسك 😊
-
مبدئيا أراها كافية 🙂🖐 فعلا أتفق مع هذا الرأي وقد خطر على بالي أيضا .. 🙂 ومن الأفكار التي خطرت في بالي أيضا هو تحويل الإجرائية OpenCustomOptions إلى دالة Function ترجع القيمة المختارة مباشرة هكذا مثلا : Public Function OpenCustomOptions(ParamArray strOptions()) As Integer Dim DocName As String, OpArg As Variant Dim strCode As String strCode = strOptions(0) Dim i As Integer For i = 1 To UBound(strOptions()) If strOptions(i) <> vbNullString Then strCode = strCode & "," & strOptions(i) Next i OpArg = strCode DocName = "frmCustomOptions" DoCmd.OpenForm DocName, , , , , acDialog, OpArg OpenCustomOptions = intResult End Function وبهذا يمكن إسناد القيمة الراجعة مباشرة إلى الكود أو إلى متغير (أراها أسهل هكذا .. حالها حال الدالة MSGBOx المدمجة) : Private Sub cmd01_Click() Dim Result As Integer Result = OpenCustomOptions("حدد النموذج الذي تريد فتحه" _ , "نموذج إدخال البيانات" _ , "نموذج تعديل البيانات" _ , "نموذج إستعراض البيانات" _ , "نموذج تحديد معايير تصفية التقارير") 'سنستخدم قيمة المتغير الذي سيحتفظ برقم الخيار المطلوب Select Case Result Case Is = 1 DoCmd.OpenForm "frm01" Case Is = 2 DoCmd.OpenForm "frm02" Case Is = 3 DoCmd.OpenForm "frm03" Case Is = 4 DoCmd.OpenForm "frm04" End Select End Sub ولكن انتبهت لاحقا أن النموذج يرجع قيمتين intResult و strResult .. فتراجعت عن الإفصاح عن الفكرة 😅