اذهب الي المحتوي
أوفيسنا

نجوم المشاركات

  1. Foksh

    Foksh

    الخبراء


    • نقاط

      57

    • Posts

      4785


  2. منتصر الانسي

    منتصر الانسي

    المشرفين السابقين


    • نقاط

      41

    • Posts

      1337


  3. ابوخليل

    ابوخليل

    أوفيسنا


    • نقاط

      41

    • Posts

      13714


  4. عبدالله بشير عبدالله

Popular Content

Showing content with the highest reputation since 05/01/26 in all areas

  1. السلام عليكم ورحمة الله وبركاته 🙂🖐 يقول المثل : أن تأتي متأخرا خير من أن لا تأتي 😅✌ بعد جهد جهيد إنتهيت من تصميم نظام تسجيل دخول + نظام صلاحيات متطور كلما أخطو فيه خطوة أجد أنه ناقص وتطلع أفكار جديدة .. 😅👊 لذلك قلت سأنزلها كما هي الآن .. حاولت تبسيطه للمستخدم والمستفيدين منه لاحقا قدر المستطاع .. وسأبدأ بواجهة تسجيل الدخول المتواضعة : المزايا : حفظ بيانات دخول المستخدم (اختياري) الدخول مباشرة بمجرد كتابة كلمة المرور بشكل صحيح (تسريع عملية الدخول) ملاحظة : جميع كلمات المرور في البرنامج : 123 ثانيا الواجهة الرئيسية : يتم تطبيق الصلاحيات للمستخدم بمجرد تسجيل الدخول .. ثالثا : إدارة المستخدمين هنا يتم إدارة جميع ما يتعلق بمستخدمي البرنامج ( إضافة ، تعديل ، حذف ، تعيين الصلاحيات ) رابعا : إدارة مجموعات العمل والصلاحيات لكل مجموعة هنا يتم ضبط الصفحات المسموح لكل مجموعة دخولها والصلاحيات الخاصة بكل صفحة .. ومثل ماهو واضح يمكن إضافة النماذج أو إزالتها كما يحلو لك وبعد ضبط مجموعات العمل يتم تعيين كل مستخدم للمجموعة الخاصة به ، ويمكن عمل مجموعة خاصة لشخص واحد فالخيارات غير محدودة .. 🙂 الآن يمكنك الخروج من البرنامج ثم تجربة تسجيل الدخول باسم المستخدمين المسجيلين في البرنامج للاستمتاع بتجربة الصلاحيات الممنوحة لكل مستخدم 😊 وبعد الدخول للصفحات يتم تطبيق الصلحيات الخاصة بالنموذج أيضا .. وبقية الصلاحيات ستظهر حسب الزر الذي يتم الضغط عليه مزايا إضافية موجودة في البرنامج .. ولها علاقة بالأمان أيضا .. نظام النسخ الاحتياطي وله إعدادات خاصة به (نسخ احتياطي يدوي أو تلقائي ) وهو موجود في صفحة إعدادات البرنامج : ولكل مستخدم مجموعة خيارات يمكنه التحكم بها مثل ( تغيير كلمة المرور ، التشغيل عند إقلاع الجهاز ، إنشاء اختصار في سطح المكتب ، حفظ بيانات التسجيل لتسريع الدخول للبرنامج) هذه هي أهم الميزات التي يحتويها البرنامج 🙂 ولفتح البرنامج في وضع التصميم ، حتى هذي سهلة للمبرمج 😅🖐 في صفحة تسجيل الدخول وكذلك الصفحة الرئيسية يوجد هذا الزر الخاص بالمبرمج >> بعد الضغط عليه >> أدخل كلمة المرور : 123 ويمكنك تغييرها من الكود الخاص بالزر .. بتظهر لك هذي النافذة الخاصة بالمبرمج فقط : وأهم ما فيها : (1) عرض الشريط العلوي ونافذة الأكسس >> بعد تفعيله تحفظ وتشغل الماكرو وبتنفتح عندك واجهة الأكسس >> أعد تشغيل البرنامج من جديد للحصول على جميع الميزات. (2) اسم نموذج البداية >> وهو أو نموذج بيشتغل معاك في البرنامج >> وهذا يسهل على المبرمج تطبيق النظام على أي برنامج آخر 🙂 (3) اسم البرنامج (واللي ييظهر في الشريط العلوي للأكسس) : (4) رقم الإصدار (نسخة البرنامج) وتاريخها >> ويمكن الاعتماد عليها لتحديث البرنامج لاحقا .. (5) إدارة نماذج الصلاحيات >> وهي النماذج اللي ستسمح بإعطاء صلاحيات لدخولها للبرنامج .. وكذلك تعطي كل نموذج اسم صديق للمستخدم وسيتم استخدام المسمى الحقيقي للنموذج داخليا .. وهكذا أكون شرحت لكم أهم المميزات ويتبقى نقطة مهمة وهي : يمكن للمبرمج الآن الاستفادة من هذا الملف فهو قاعدة جاهزة لإنطلاق في تصميم برنامجك الخاص .. جميع الأكواد الخاصة بالصلاحيات ستجدها في الموديول التالي : وأهم ما ستحتاج معرفته في كيفية تطبيق الصلاحيات ذكرته في الملاحظات المكتوبة أول الموديول : ' (1) : لتطبيق صلاحية فتح النماذج وصلاحيات الإضافة والتعديل والحذف تضع الأسطر التالية أول الأكواد في حدث فتح النموذج '------------------------------------------------------------------------------- 'Private Sub Form_Open(Cancel As Integer) ' ' فحص صلاحة دخول النموذج ' Cancel = Not Permission_OpenForm(Me.Name, True) ' ' تطبيق صلاحيات : الإضافة / التعديل / الحذف ' Apply_Addition_Edits_Delete_Permissions (Me.Name) 'End Sub '------------------------------------------------------------------------------- ' (2) : لتطبيق صلاحيات الطباعة والاستيراد والتصدير داخل نموذج معين تكتب هذه الأسطر لمعرفة وجود الصلاحة من عدمها ' : وكل سطر من هذه الصلاحيات يرجع لك النتيجة كما يلي ' True : مسموح ' False : ممنوع '------------------------------------------------------------------------------- ' 1- فحص صلاحية الطباعة (True/False) ' Permission_Print(Me.Name , True) ' |_>> (True/False) : هذه الجزئية اختيارية لعرض رسالة تنبيه عند عدم وجود صلاحية من عدمها ' 2- فحص صلاحية الاستيراد (True/False) ' Permission_Import(Me.Name , True) ' |_>> (True/False) : هذه الجزئية اختيارية لعرض رسالة تنبيه عند عدم وجود صلاحية من عدمها ' 3- فحص صلاحية التصدير (True/False) ' Permission_Export(Me.Name , True) ' |_>> (True/False) : هذه الجزئية اختيارية لعرض رسالة تنبيه عند عدم وجود صلاحية من عدمها '------------------------------------------------------------------------------- والنماذج الموجودة في البرنامج مع أزرارها تم تطبيق الأكواد عليها بشكل عملي << راجعها وأدرسها لمعرفة كيفية عملها .. وهي سهلة يسيرة بفضل الله 🙂 وهذا مثال عملي لتطبيق الصلاحية على زر الطباعة (فتح التقرير) مثلا : وهكذا بقية الصلاحيات (اطلع على بقية الموديول) تم تحويلها لأسطر قليلة بسيطة للاستفادة منها بكل يسر .. 🙂 وأخيرا تحميل البرنامج :: Moosak ‏‏Login System with permissions 1.0.zip :: وآخر دعوانا أن الحمد لله رب العالمين ::
    8 points
  2. برنامج صغير خفيف .. يخدم الايجار اليومي وغيره ويصلح لأي خدمة ايجارات قابل للتطوير بمجرد تنفيذ اجراء الايجار يطبع فاتورة استلام .. وعند تنفيذ اجراء الارجاع يطبع فاتورة بالمبالغ المستحقة حاليا هذه الفواتير تفتح كتقارير يتم عرضها .. وهي مصممة للعمل على الطابعة الحرارية امل ان تجدوا المتعة والفائدة كلمة المرور = 1 Equps.rar
    6 points
  3. استكمالاً للموضوع القديم هنا ، تم بحمد الله وفضله ؛ إطلاق النسخة الأولى من اللعبة الشهيرة الدومينو ، ولكن بنكهتي التي تعودت عليها 😊 .. اللعبة لن تحتاج شرح عنها ، سوى كيفية اللعب .. ضبط الإعدادات :- في نموذج البداية والمخصص لإعدادات اللعبة . انقر الزر لعبة محلية. اللاعب الأول = الخصم وهو الكمبيوتر . واللاعب الثاني هو أنت عزيزي اللاعب . من يبدأ اللعبة هو الذي يكون لديه حجر الدش الأكبر ( إن وجد ) ، أو اللاعب الذي لديه أكبر حجر . الرقم 100 هو رقم افتراضي للمجموع الذي سيكون الفائز من يصل إليه أولاً . نقاط الفوز = مجموع الأرقام في الحجارة التي في يد اللاعب الخسران . والفائز يحصل على مجموع النقاط هذه . صورة واجهة الإعدادات . كيفية اللعب على النسخة المحلية :- عند بدء اللعبة ، اللاعب الذي لديه أكبر حجر مزدوج ( الدش ) هو من يبدأ اللعب .. لمعرفة وظيفة كل زر فقط قف عليه لتعرف ظيفته في اللعبة ، وعدد الأزرار = 4 وهي :- زر بدء الجولة الجديدة . * زر سحب حجر من الكومة ( عندما لا يكون لديك او لدى الكمبيوتر حجر صالح للعب ) . * زر تسليم الدور . ويكون متاحاً عندما لا يكون لدى الكومة ( البنك ) حجارة ، وبالطبع عندما لا يكون لديك حجر صالح لتلعبه بينما الكمبيوتر أو اللاعب الآخر لديه حجر صالح للرمي . أما عند عدم وجود حجارة صالح للرمي مع كلا الطرفين ( ولم يتبق حجارة في الكومة - البنك - ) فتكون اللعبة قد أغلقت ، والنتيجة تحسم لصاحب العدد الأقل مجموعاً للحجارة بالفوز . * زر الغش 😁 ، وهو زر كشف حجارة الكمبيوتر . وعكسه زر الإخفاء . اللعب سيكون بالنقر المزدوج على الحجر الصالح للرمي بيدك . عند وجود حجر صالح للرمي باتجاهين ، لديك الحرية باختيار الجهة التي تريد رميه فيها بظهور مستطيل وهمي يمثل موقع الحجر . ( ستلاحظونه أثناء اللعب بسهولة و وضوح ) . صورة واجهة اللعبة . فيديو توضيحي لطريقة اللعب :- التحميل للإصدارين 32 و 64 من هنا . وقد تم رفعه على جوجل درايف لأن حجم الملف تقريباً بحدود 9 ميجا مع مجلد الصور .
    5 points
  4. اعرض الملف نظام تسجيل دخول احترافي، مع نظام صلاحيات متعدد المستويات السلام عليكم ورحمة الله وبركاته 🙂🖐 بفضل الله وتوفيقه أقدم لكم تصميم نظام تسجيل دخول + نظام صلاحيات متطور حاولت تبسيطه للمستخدم والمستفيدين منه لاحقا قدر المستطاع .. وسأبدأ بواجهة تسجيل الدخول المتواضعة : المزايا : حفظ بيانات دخول المستخدم (اختياري) الدخول مباشرة بمجرد كتابة كلمة المرور بشكل صحيح (تسريع عملية الدخول) ملاحظة : جميع كلمات المرور في البرنامج : 123 ثانيا الواجهة الرئيسية : يتم تطبيق الصلاحيات للمستخدم بمجرد تسجيل الدخول .. ثالثا : إدارة المستخدمين هنا يتم إدارة جميع ما يتعلق بمستخدمي البرنامج ( إضافة ، تعديل ، حذف ، تعيين الصلاحيات ) رابعا : إدارة مجموعات العمل والصلاحيات لكل مجموعة هنا يتم ضبط الصفحات المسموح لكل مجموعة دخولها والصلاحيات الخاصة بكل صفحة .. ومثل ماهو واضح يمكن إضافة النماذج أو إزالتها كما يحلو لك وبعد ضبط مجموعات العمل يتم تعيين كل مستخدم للمجموعة الخاصة به ، ويمكن عمل مجموعة خاصة لشخص واحد فالخيارات غير محدودة .. 🙂 الآن يمكنك الخروج من البرنامج ثم تجربة تسجيل الدخول باسم المستخدمين المسجيلين في البرنامج للاستمتاع بتجربة الصلاحيات الممنوحة لكل مستخدم 😊 وبعد الدخول للصفحات يتم تطبيق الصلحيات الخاصة بالنموذج أيضا .. وبقية الصلاحيات ستظهر حسب الزر الذي يتم الضغط عليه مزايا إضافية موجودة في البرنامج .. ولها علاقة بالأمان أيضا .. نظام النسخ الاحتياطي وله إعدادات خاصة به (نسخ احتياطي يدوي أو تلقائي ) وهو موجود في صفحة إعدادات البرنامج : ولكل مستخدم مجموعة خيارات يمكنه التحكم بها مثل ( تغيير كلمة المرور ، التشغيل عند إقلاع الجهاز ، إنشاء اختصار في سطح المكتب ، حفظ بيانات التسجيل لتسريع الدخول للبرنامج) هذه هي أهم الميزات التي يحتويها البرنامج 🙂 ولفتح البرنامج في وضع التصميم ، حتى هذي سهلة للمبرمج 😅🖐 في صفحة تسجيل الدخول وكذلك الصفحة الرئيسية يوجد هذا الزر الخاص بالمبرمج >> بعد الضغط عليه >> أدخل كلمة المرور : 123 ويمكنك تغييرها من الكود الخاص بالزر .. بتظهر لك هذي النافذة الخاصة بالمبرمج فقط : وأهم ما فيها : (1) عرض الشريط العلوي ونافذة الأكسس >> بعد تفعيله تحفظ وتشغل الماكرو وبتنفتح عندك واجهة الأكسس >> أعد تشغيل البرنامج من جديد للحصول على جميع الميزات. (2) اسم نموذج البداية >> وهو أو نموذج بيشتغل معاك في البرنامج >> وهذا يسهل على المبرمج تطبيق النظام على أي برنامج آخر 🙂 (3) اسم البرنامج (واللي ييظهر في الشريط العلوي للأكسس) : (4) رقم الإصدار (نسخة البرنامج) وتاريخها >> ويمكن الاعتماد عليها لتحديث البرنامج لاحقا .. (5) إدارة نماذج الصلاحيات >> وهي النماذج اللي ستسمح بإعطاء صلاحيات لدخولها للبرنامج .. وكذلك تعطي كل نموذج اسم صديق للمستخدم وسيتم استخدام المسمى الحقيقي للنموذج داخليا .. وهكذا أكون شرحت لكم أهم المميزات ويتبقى نقطة مهمة وهي : يمكن للمبرمج الآن الاستفادة من هذا الملف فهو قاعدة جاهزة لإنطلاق في تصميم برنامجك الخاص .. جميع الأكواد الخاصة بالصلاحيات ستجدها في الموديول التالي : وأهم ما ستحتاج معرفته في كيفية تطبيق الصلاحيات ذكرته في الملاحظات المكتوبة أول الموديول : ' (1) : لتطبيق صلاحية فتح النماذج وصلاحيات الإضافة والتعديل والحذف تضع الأسطر التالية أول الأكواد في حدث فتح النموذج '------------------------------------------------------------------------------- 'Private Sub Form_Open(Cancel As Integer) ' ' فحص صلاحة دخول النموذج ' Cancel = Not Permission_OpenForm(Me.Name, True) ' ' تطبيق صلاحيات : الإضافة / التعديل / الحذف ' Apply_Addition_Edits_Delete_Permissions (Me.Name) 'End Sub '------------------------------------------------------------------------------- ' (2) : لتطبيق صلاحيات الطباعة والاستيراد والتصدير داخل نموذج معين تكتب هذه الأسطر لمعرفة وجود الصلاحة من عدمها ' : وكل سطر من هذه الصلاحيات يرجع لك النتيجة كما يلي ' True : مسموح ' False : ممنوع '------------------------------------------------------------------------------- ' 1- فحص صلاحية الطباعة (True/False) ' Permission_Print(Me.Name , True) ' |_>> (True/False) : هذه الجزئية اختيارية لعرض رسالة تنبيه عند عدم وجود صلاحية من عدمها ' 2- فحص صلاحية الاستيراد (True/False) ' Permission_Import(Me.Name , True) ' |_>> (True/False) : هذه الجزئية اختيارية لعرض رسالة تنبيه عند عدم وجود صلاحية من عدمها ' 3- فحص صلاحية التصدير (True/False) ' Permission_Export(Me.Name , True) ' |_>> (True/False) : هذه الجزئية اختيارية لعرض رسالة تنبيه عند عدم وجود صلاحية من عدمها '------------------------------------------------------------------------------- والنماذج الموجودة في البرنامج مع أزرارها تم تطبيق الأكواد عليها بشكل عملي << راجعها وأدرسها لمعرفة كيفية عملها .. وهي سهلة يسيرة بفضل الله 🙂 وهذا مثال عملي لتطبيق الصلاحية على زر الطباعة (فتح التقرير) مثلا : وهكذا بقية الصلاحيات (اطلع على بقية الموديول) تم تحويلها لأسطر قليلة بسيطة للاستفادة منها بكل يسر .. 🙂 :: 🌹 وآخر دعوانا أن الحمد لله رب العالمين 🌹 :: صاحب الملف Moosak تمت الاضافه 05/12/26 الاقسام قسم الأكسيس  
    5 points
  5. السلام عليكم الموقع https://zingl.github.io يعرض طريقة لعمل الباركود Code128, QR, Aztec, DataMatrix بالكود ويدون الاستعانة ببرامج خارجية. في الموقع مرفق اكسس (وقد عملت تعديل بسيط عليه لعمل الصور التالية ، والمرفق موجود في اسفل المشاركة) ، وهنا اعرض مثالين على العرض: . . طبعا Code128 غير مناسب للكلمات الطويلة. الكود يقوم بعرض الباركود داخل حقل نص Textbox ، وهو يستعمل Line لعمل الباركود : . المشكلة ان الاكسس يقوم بتنفيذ الامر Line على خلفية التقرير/النموذج ، وبعدها يقوم بعرض بقية الكائنات ، بمعنى ، اذا وضعنا كائن/حقل صورة خلف حقل نص الباركود ، فاننا لا نستطيع رؤية الباركود ، لأنه اصبح خلف الصورة. في الصورة التالية ، التقرير الاول هو ما تم عرضه سابقا ، بينما في التقرير الثاني وضعت صورة زرقاء خلف كائنات/حقول الباركود: . ونتيجة التقرير الثاني: . مع وجود الصورة في الخلف ، المطلوب اظهار الباركود على الصورة ، وبأي طريقة. من تجربتي ، لإظهار الباركود ، يجب وضعه في كائن/حقل صورة ، امام الصورة الخلفية. ارفق لكم من نفس الموقع ، مرفق اكسل كذلك. ومن موقع www.lebans.com ارفق قاعدة البيانات A2KPictureBoxVer35.accdb ، والتي بها نموذج و مكتبات قد تساعد الذكاء الاصطناعي بالعمل (نعم ، قد يحتاج الى مساعدتك في توجيهه). QR_barcode.accdb A2KPictureBoxVer35.accdb barcode.xlsm
    4 points
  6. تمام ، قمت بالتطبيق مسبقاً بإجراءات بسيطة واستخدام فكرة الرسم والتدوير من الملف المرفق الأصلي A2KPictureBoxVer35 .. New QR.accdb
    4 points
  7. السلام عليكم ورحمة الله وبركاته .. 🙂 نزولا عند رغبة شيخنا الفاضل @ابوخليل تم إضافة تحسين بسيط على دالة التفقيط المبسطة لتعميم الفائدة .. طبعا الدالة كانت تأخذ 3 أرقام من كسر العملة هكذا ( 143.487 ) وهذا ينطبق على بعض العملات كالريال العماني والبيسة العمانية بينما أن هناك الكثير من العملات تعتمد 2 رقمين لكسر العملة مثال الريال والهللة السعودية والجنيه والقرش المصري هكذا ( 123.45 ) والتعديل الذي تم إجراؤه هو إضافة معامل رابع للدالة للتحكم في هذا الاختلاف واختيار عدد أرقام كسر العملة 2 أو 3 حسب الحاجة .. بدون إطالة إليكم الدالة كاملة .. وكذلك تم إضافة ملف جاهز ليبين طريقة الاستخدام : 🙂 Option Compare Database Option Explicit Function NoToTxt(TheNo As Double, _ MyCur As String, _ MySubCur As String, _ Optional FractionDigits As Integer = 3 _ ) As String '---------------------------------- ' دالة التفقيط المحسنة ' TheNo : المبلغ ' MyCur : العملة الرئيسية ' MySubCur : جزء العملة ' FractionDigits : عدد أرقام جزء العملة 2 أو 3 '---------------------------------- ' : أمثلة على الاستخدام ' NoToTxt(15.436, "ريال عماني", "بيسة") ' NoToTxt(15.43, "ريال", "هللة", 2 ) ' NoToTxt2(15.436, "ريال", "بيسة", 3) '---------------------------------- Dim MyArry1(0 To 9) As String Dim MyArry2(0 To 9) As String Dim MyArry3(0 To 9) As String Dim Myno As String Dim GetNo As String Dim RdNo As Integer Dim My100 As String Dim My10 As String Dim My1 As String Dim My11 As String Dim My12 As String Dim GetTxt As String Dim Mybillion As String Dim MyMillion As String Dim MyThou As String Dim MyHun As String Dim MyFraction As String Dim MyAnd As String Dim i As Integer Dim ReMark As String Dim IntegerPart As Double Dim FractionPart As Long Dim ScaleNo As Double ' عدد خانات الكسر المسموح بها ' الدالة الحالية تقرأ الجزء العشري كمجموعة من 3 أرقام، لذلك الحد الأعلى 3 If FractionDigits < 0 Then FractionDigits = 0 If FractionDigits > 3 Then FractionDigits = 3 If Abs(TheNo) > 999999999999.999 Then Exit Function If TheNo < 0 Then TheNo = TheNo * -1 ReMark = "عليه مبلغ " Else ReMark = "له مبلغ " End If If TheNo = 0 Then NoToTxt = "صفر" Exit Function End If MyAnd = " و" MyArry1(0) = "" MyArry1(1) = "مائة" MyArry1(2) = "مائتان" MyArry1(3) = "ثلاثمائة" MyArry1(4) = "اربعمائة" MyArry1(5) = "خمسمائة" MyArry1(6) = "ستمائة" MyArry1(7) = "سبعمائة" MyArry1(8) = "ثمانمائة" MyArry1(9) = "تسعمائة" MyArry2(0) = "" MyArry2(1) = " عشر" MyArry2(2) = "عشرون" MyArry2(3) = "ثلاثون" MyArry2(4) = "اربعون" MyArry2(5) = "خمسون" MyArry2(6) = "ستون" MyArry2(7) = "سبعون" MyArry2(8) = "ثمانون" MyArry2(9) = "تسعون" MyArry3(0) = "" MyArry3(1) = "احدى" MyArry3(2) = "اثنان" MyArry3(3) = "ثلاثة" MyArry3(4) = "اربعة" MyArry3(5) = "خمسة" MyArry3(6) = "ستة" MyArry3(7) = "سبعة" MyArry3(8) = "ثمانية" MyArry3(9) = "تسعة" '====================== ' تجهيز الرقم حسب عدد الخانات المطلوبة بعد الفاصلة ' مثال: ' FractionDigits = 2 يجعل 15.436 تقرأ كـ 15.44 ' FractionDigits = 3 يجعل 15.436 تقرأ كـ 15.436 TheNo = Round(TheNo, FractionDigits) IntegerPart = Fix(TheNo) If FractionDigits = 0 Then FractionPart = 0 Else ScaleNo = 10 ^ FractionDigits FractionPart = CLng(Round((TheNo - IntegerPart) * ScaleNo, 0)) End If ' معالجة حالة التقريب التي قد ترفع الجزء العشري إلى 100 أو 1000 If FractionDigits > 0 Then If FractionPart >= ScaleNo Then IntegerPart = IntegerPart + 1 FractionPart = 0 End If End If ' الجزء الصحيح 12 رقم + الجزء العشري دائمًا 3 أرقام داخليًا ' عند اختيار خانتين مثلًا 44 يتم تخزينها كـ 044 حتى تُقرأ أربعون وأربعة GetNo = Format(IntegerPart, "000000000000") & "." & Format(FractionPart, "000") i = 0 '=============== Do While i < 16 My100 = "" My10 = "" My1 = "" My11 = "" My12 = "" GetTxt = "" If i < 12 Then Myno = Mid$(GetNo, i + 1, 3) Else Myno = Mid$(GetNo, i + 2, 3) End If If Val(Mid$(Myno, 1, 3)) > 0 Then RdNo = Val(Mid$(Myno, 1, 1)) My100 = MyArry1(RdNo) RdNo = Val(Mid$(Myno, 3, 1)) My1 = MyArry3(RdNo) RdNo = Val(Mid$(Myno, 2, 1)) My10 = MyArry2(RdNo) If Val(Mid$(Myno, 2, 2)) = 11 Then My11 = "احدى عشر" If Val(Mid$(Myno, 2, 2)) = 12 Then My12 = "اثني عشر" If Val(Mid$(Myno, 2, 2)) = 10 Then My10 = "عشرة" If Val(Mid$(Myno, 1, 1)) > 0 And Val(Mid$(Myno, 2, 2)) > 0 Then My100 = My100 & MyAnd End If If Val(Mid$(Myno, 3, 1)) > 0 And Val(Mid$(Myno, 2, 1)) > 1 Then My1 = My1 & MyAnd End If GetTxt = My100 & My1 & My10 If Val(Mid$(Myno, 3, 1)) = 1 And Val(Mid$(Myno, 2, 1)) = 1 Then GetTxt = My100 & My11 If Val(Mid$(Myno, 1, 1)) = 0 Then GetTxt = My11 End If If Val(Mid$(Myno, 3, 1)) = 2 And Val(Mid$(Myno, 2, 1)) = 1 Then GetTxt = My100 & My12 If Val(Mid$(Myno, 1, 1)) = 0 Then GetTxt = My12 End If If i = 0 And GetTxt <> "" Then If Val(Mid$(Myno, 1, 3)) > 10 Then Mybillion = GetTxt & " مليار" Else Mybillion = GetTxt & " مليارات" If Val(Mid$(Myno, 1, 3)) = 1 Then Mybillion = " مليار" If Val(Mid$(Myno, 1, 3)) = 2 Then Mybillion = " ملياران" End If End If If i = 3 And GetTxt <> "" Then If Val(Mid$(Myno, 1, 3)) > 10 Then MyMillion = GetTxt & " مليون" Else MyMillion = GetTxt & " ملايين" If Val(Mid$(Myno, 1, 3)) = 1 Then MyMillion = " مليون" If Val(Mid$(Myno, 1, 3)) = 2 Then MyMillion = " مليونان" End If End If If i = 6 And GetTxt <> "" Then If Val(Mid$(Myno, 1, 3)) > 10 Then MyThou = GetTxt & " الف" Else MyThou = GetTxt & " الاف" If Val(Mid$(Myno, 1, 3)) = 1 Then MyThou = " الف" If Val(Mid$(Myno, 1, 3)) = 2 Then MyThou = " الفان" End If End If If i = 9 And GetTxt <> "" Then MyHun = GetTxt If i = 12 And GetTxt <> "" Then If FractionDigits > 0 Then MyFraction = GetTxt End If End If End If i = i + 3 Loop '============================ If Mybillion <> "" Then If MyMillion <> "" Or MyThou <> "" Or MyHun <> "" Then Mybillion = Mybillion & MyAnd End If End If If MyMillion <> "" Then If MyThou <> "" Or MyHun <> "" Then MyMillion = MyMillion & MyAnd End If End If If MyThou <> "" Then If MyHun <> "" Then MyThou = MyThou & MyAnd End If End If If MyFraction <> "" Then If Mybillion <> "" Or MyMillion <> "" Or MyThou <> "" Or MyHun <> "" Then NoToTxt = ReMark & Mybillion & MyMillion & MyThou & MyHun & " " & MyCur & MyAnd & MyFraction & " " & MySubCur & " فقط" Else NoToTxt = ReMark & MyFraction & " " & MySubCur & " فقط" End If Else NoToTxt = ReMark & Mybillion & MyMillion & MyThou & MyHun & " " & MyCur & " فقط" End If End Function NoToTxt.accdb
    4 points
  8. و عليكم السلام ورحمة الله وبركاته تفضل الملف حسب نسخة الأوفيس عندك لو قديم الملف الأول و لكن اذا أضفت كلمات جديدة يجب أن تضيفها في الصيغة ولو عندك . أوفيس حديث يمكن استخدام الملف الثاني فهو يتعرف على الكلمات تلقائيا الملف الثالث يعمل بالأكواد الحضور والغياب (2).xlsx الحضور والغياب حديث.xlsx الحضور والغياب أكواد.xlsm
    4 points
  9. ممكن وبكل سهولة هذا البرنامج يسهل عليك أدخال الدرجات والتاريخ كذلك الشرح يطول ولكن ثق تماما أنك بمجرد أن تفتحه وتثبت الماكرو وتستخدمه ستفهم البرنامج ثم بعد التجربة أذا أردت أي توضيح نحن في الخدمة محرر الأكواد مفتوح ويمكنك التعديل عليه كما تريد الطريقة : افتح ملفك الذي تريد الأدخال فيه ثم افتح هذا الملف ثم اضغط على إحدى الأيقونتين (الدرجات أو التاريخ) وعندما يفتح الفورم انتقل مباشرة إلى ملفك الذي تريد الأدخال فيه ستجد أن الفورم ينتقل إلى الملف الجديد تفضل إدخال الدرجات والتاريخ.xls
    4 points
  10. التشاؤم قد يكون سبباً في جعلنا نهز الشوك في وروده لشم عبيره في لحظة من اللحظات 😅 أتمنى أن نجد التفاعل الذي نتمناه جميعاً
    3 points
  11. وعليكم السلام -تفضل معادلتين لطلبك .اختر منهما ما تشاء =MIN(IF(($C$7:$C$32=$M7)*($G$7:$G$32=""),$E$7:$E$32)) =MINIFS($E$7:$E$32,$C$7:$C$32,$M7,$G$7:$G$32,"") استخراج تاريخ اقدم الفاتورة-1.xlsx
    3 points
  12. السلام عليكم 🙂 كانت لنا تجربة في عمل لقاءات لأعضاء مجموعة الأكسس على الواتسأب وتم نشر الراوابط على مستوى أوسع .. وهذه روابط الللقاءات التي تمت : ولكن تم التوقف عنها لاحقا للأسف بسبب ضعف المشاركة والحضور .. 💔
    3 points
  13. بصراحة أنا رأيي مختلف فالطريقة الثانية سيكون التقرير فيها أخف لأنها لن تتطلب منك إنشاء تقرير إضافي وإضافة عنصر تحكم التقرير الفرعي هذا مثال لسيناريو محتمل سنفترض أن المطلوب تصميم تطبيق لإصدار البطائق وفق التصميم التالي عندها سنطلب ممن قام بتصميمها بإن يجعل منطقة الـ QRCode شفافة أو تحديدها كمربع 2×2 سم مثلا (للعلم انا قمت بهذه العملية بطريقة بدائية بإستخدام تطبيق Photos التابع لويندوز وستكون النتيجة أفضل إذا قام بها محترف فوتوشوب) قمت بإستخدام الصورة المعدلة فحصلت على النتيجة التالية ومرفق لكم المثال بعد التعديل تحياتي QR_barcode_New2.rar
    3 points
  14. وانا كذلك ما كانت عندي مشكلة. وللاجابة على السؤال وحسب ما قرأت : النماذج/التقارير المنبثقة ، ولأنه بإمكانك اخراجها من اطار برنامج الاكسس ، فيتعامل معها الوندوز ، وتأخذ الاتجاه حسب اتجاه اعدادات الوندوز ، يميناّ او يساراّ ، بينما النماذج ولأنها داخل اطار الاكسس ، فيتم التعامل معها بإعدادات الاكسس ، فتتوسط عرض النموذج. عملت هذه الحيلة: 1. جعلت النموذج بدون برواز . 2. اضفت كائن مسمى واسميته lbl_Move_Form ، ويمكنك تغيير اتجاهه حسب رغبتك . 3. استخدمت الكود التالي لتحريك النموذج ، بعد النقر على هذا الكائن Dim moveFrm As Boolean Dim xDrag As Long Dim yDrag As Long ' Private Sub lbl_Move_Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) moveFrm = True xDrag = X yDrag = Y End Sub Private Sub lbl_Move_Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) Dim xx As Long Dim yy As Long If moveFrm = True Then xx = Me.WindowLeft + X - xDrag yy = Me.WindowTop + Y - yDrag Me.Move xx, yy End If End Sub Private Sub lbl_Move_Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single) Dim xx As Long Dim yy As Long xx = Me.WindowLeft + X - xDrag yy = Me.WindowTop + Y - yDrag Me.Move xx, yy moveFrm = False End Sub . والنتيجة 1646.Form_Caption_Direction.mdb
    3 points
  15. السلام عليكم كما في العنوان حسابات جارية للأموال الواردة والمنصرف لشركة محددة وفروعها ضمن حساب موحد للشركة اما ان كانت حاجتك مثل هذا ولكن تريد لكل فرع حسابه الخاص وقيود مزدوجة فستجد بغيتك هنا تحويلات من الصندوق واليه حساب الواردات حساب المصاريف تقرير تفصيلي حسب الطلب مجاميع وتفقيط رواتب الموظفين .. حسب الموظف الواحد وفرعه او حسب موظفي فرع او جميع موظفي الشركة ... فقط بضغطة زر مميزات البرنامج : 1- تقسيم قاعدة البيانات 2- اضافة شاشة دخول ومستخدمين الادمن كلمة المرور =78 البقية كلمة المرور =1 ولمسات اخرى وخصائص وخدمات تجدونها عند تصفح البرنامج المرفقات : النسخة الاولى .. يتبع تطوير AccUpPrg2.rar
    3 points
  16. Version 1.0.0

    47 تنزيل

    السلام عليكم ورحمة الله وبركاته 🙂🖐 بفضل الله وتوفيقه أقدم لكم تصميم نظام تسجيل دخول + نظام صلاحيات متطور حاولت تبسيطه للمستخدم والمستفيدين منه لاحقا قدر المستطاع .. وسأبدأ بواجهة تسجيل الدخول المتواضعة : المزايا : حفظ بيانات دخول المستخدم (اختياري) الدخول مباشرة بمجرد كتابة كلمة المرور بشكل صحيح (تسريع عملية الدخول) ملاحظة : جميع كلمات المرور في البرنامج : 123 ثانيا الواجهة الرئيسية : يتم تطبيق الصلاحيات للمستخدم بمجرد تسجيل الدخول .. ثالثا : إدارة المستخدمين هنا يتم إدارة جميع ما يتعلق بمستخدمي البرنامج ( إضافة ، تعديل ، حذف ، تعيين الصلاحيات ) رابعا : إدارة مجموعات العمل والصلاحيات لكل مجموعة هنا يتم ضبط الصفحات المسموح لكل مجموعة دخولها والصلاحيات الخاصة بكل صفحة .. ومثل ماهو واضح يمكن إضافة النماذج أو إزالتها كما يحلو لك وبعد ضبط مجموعات العمل يتم تعيين كل مستخدم للمجموعة الخاصة به ، ويمكن عمل مجموعة خاصة لشخص واحد فالخيارات غير محدودة .. 🙂 الآن يمكنك الخروج من البرنامج ثم تجربة تسجيل الدخول باسم المستخدمين المسجيلين في البرنامج للاستمتاع بتجربة الصلاحيات الممنوحة لكل مستخدم 😊 وبعد الدخول للصفحات يتم تطبيق الصلحيات الخاصة بالنموذج أيضا .. وبقية الصلاحيات ستظهر حسب الزر الذي يتم الضغط عليه مزايا إضافية موجودة في البرنامج .. ولها علاقة بالأمان أيضا .. نظام النسخ الاحتياطي وله إعدادات خاصة به (نسخ احتياطي يدوي أو تلقائي ) وهو موجود في صفحة إعدادات البرنامج : ولكل مستخدم مجموعة خيارات يمكنه التحكم بها مثل ( تغيير كلمة المرور ، التشغيل عند إقلاع الجهاز ، إنشاء اختصار في سطح المكتب ، حفظ بيانات التسجيل لتسريع الدخول للبرنامج) هذه هي أهم الميزات التي يحتويها البرنامج 🙂 ولفتح البرنامج في وضع التصميم ، حتى هذي سهلة للمبرمج 😅🖐 في صفحة تسجيل الدخول وكذلك الصفحة الرئيسية يوجد هذا الزر الخاص بالمبرمج >> بعد الضغط عليه >> أدخل كلمة المرور : 123 ويمكنك تغييرها من الكود الخاص بالزر .. بتظهر لك هذي النافذة الخاصة بالمبرمج فقط : وأهم ما فيها : (1) عرض الشريط العلوي ونافذة الأكسس >> بعد تفعيله تحفظ وتشغل الماكرو وبتنفتح عندك واجهة الأكسس >> أعد تشغيل البرنامج من جديد للحصول على جميع الميزات. (2) اسم نموذج البداية >> وهو أو نموذج بيشتغل معاك في البرنامج >> وهذا يسهل على المبرمج تطبيق النظام على أي برنامج آخر 🙂 (3) اسم البرنامج (واللي ييظهر في الشريط العلوي للأكسس) : (4) رقم الإصدار (نسخة البرنامج) وتاريخها >> ويمكن الاعتماد عليها لتحديث البرنامج لاحقا .. (5) إدارة نماذج الصلاحيات >> وهي النماذج اللي ستسمح بإعطاء صلاحيات لدخولها للبرنامج .. وكذلك تعطي كل نموذج اسم صديق للمستخدم وسيتم استخدام المسمى الحقيقي للنموذج داخليا .. وهكذا أكون شرحت لكم أهم المميزات ويتبقى نقطة مهمة وهي : يمكن للمبرمج الآن الاستفادة من هذا الملف فهو قاعدة جاهزة لإنطلاق في تصميم برنامجك الخاص .. جميع الأكواد الخاصة بالصلاحيات ستجدها في الموديول التالي : وأهم ما ستحتاج معرفته في كيفية تطبيق الصلاحيات ذكرته في الملاحظات المكتوبة أول الموديول : ' (1) : لتطبيق صلاحية فتح النماذج وصلاحيات الإضافة والتعديل والحذف تضع الأسطر التالية أول الأكواد في حدث فتح النموذج '------------------------------------------------------------------------------- 'Private Sub Form_Open(Cancel As Integer) ' ' فحص صلاحة دخول النموذج ' Cancel = Not Permission_OpenForm(Me.Name, True) ' ' تطبيق صلاحيات : الإضافة / التعديل / الحذف ' Apply_Addition_Edits_Delete_Permissions (Me.Name) 'End Sub '------------------------------------------------------------------------------- ' (2) : لتطبيق صلاحيات الطباعة والاستيراد والتصدير داخل نموذج معين تكتب هذه الأسطر لمعرفة وجود الصلاحة من عدمها ' : وكل سطر من هذه الصلاحيات يرجع لك النتيجة كما يلي ' True : مسموح ' False : ممنوع '------------------------------------------------------------------------------- ' 1- فحص صلاحية الطباعة (True/False) ' Permission_Print(Me.Name , True) ' |_>> (True/False) : هذه الجزئية اختيارية لعرض رسالة تنبيه عند عدم وجود صلاحية من عدمها ' 2- فحص صلاحية الاستيراد (True/False) ' Permission_Import(Me.Name , True) ' |_>> (True/False) : هذه الجزئية اختيارية لعرض رسالة تنبيه عند عدم وجود صلاحية من عدمها ' 3- فحص صلاحية التصدير (True/False) ' Permission_Export(Me.Name , True) ' |_>> (True/False) : هذه الجزئية اختيارية لعرض رسالة تنبيه عند عدم وجود صلاحية من عدمها '------------------------------------------------------------------------------- والنماذج الموجودة في البرنامج مع أزرارها تم تطبيق الأكواد عليها بشكل عملي << راجعها وأدرسها لمعرفة كيفية عملها .. وهي سهلة يسيرة بفضل الله 🙂 وهذا مثال عملي لتطبيق الصلاحية على زر الطباعة (فتح التقرير) مثلا : وهكذا بقية الصلاحيات (اطلع على بقية الموديول) تم تحويلها لأسطر قليلة بسيطة للاستفادة منها بكل يسر .. 🙂 :: 🌹 وآخر دعوانا أن الحمد لله رب العالمين 🌹 ::
    3 points
  17. لم أعرف أي التقريرين تريد تطبيق طلبك عليه ولكني رأيت أن تقرير (مناداة قديم) هو الاقرب فقمت بتنفيذ الحل فيه ارجو أن يكون هذا الحل هو ماتريده بالضبط تحياتي 111.rar
    3 points
  18. السلام عليكم ورحمه الله وبركاته بعد اذن استاذنا @عبدالله بشير عبدالله ممكن تستخدم الملفات المرفقه للاضافه الدول عندك كيفية اضافة معادلة البحث XLOOKUP و الدالة Xmatch لاوفيس 2019-2016- 2010 - 2007 – 2003 XFunctions.7z
    3 points
  19. وعليكم السلام ورحمة الله وبركاته دالة XLOOKUP غير متوفرة في الإصدارات القديمة مثل Excel 2010 و2016 و2019، وهي موجودة فقط في Excel 2021 وما بعده، وكذلك في إصدارات Microsoft 365 احدى البدائل INDEX + MATCH
    3 points
  20. شاشة فريدة وحيدة exe التصميم على vb6 علما انه يوجد في مكتبتي نسخة من هذه الشاشة على اكسس .. ولكني ارى ان هذه اخف وتعمل على اي جهاز وهذا هو الكود المسؤول باستخدام المعادلة الطبية الظاهرة هذه المعادلة قد يستفيد منها من يريد اضافة هذه الميزة الى برنامجه الطبي Private Sub Command1_Click() On Error Resume Next Dim Dday As Integer Dim i As Double Dim sc As Integer Dim d1 As Date Dim s1 As String Dim m1 As Date 'Calendar = vbCalGreg i = DateDiff("d", Date, Text1.Text) w1.Text = Abs(i \ 7) dx.Text = Abs(i Mod 7) m1 = DateAdd("d", 280, Text1) Dday = Weekday(m1) If Dday = 1 Then yom.Text = "الأحد" If Dday = 2 Then yom.Text = "الاثنين" If Dday = 3 Then yom.Text = "الثلاثاء" If Dday = 4 Then yom.Text = "الأربعاء" If Dday = 5 Then yom.Text = "الخميس" If Dday = 6 Then yom.Text = "الجمعة" If Dday = 7 Then yom.Text = "السبت" 'Calendar = vbCalHijri h1 = Format(m1, "YYYY/MM/DD") End Sub حساب الحمل.rar
    3 points
  21. وعليكم السلام ورحمة الله وبركاته حسب علمي في Microsoft Excel لا يمكن الانتقال لخلية أخرى “تلقائيًا بالكامل” أثناء الكتابة بدون أي إجراء من المستخدم، لأن الخلية تبقى في وضع التحرير حتى يتم تأكيد الإدخال. لكن يمكن بطريقة اخرى عن طريق فورم بحيث يتم فتح الفورم ثم اختيار اول خلية المراد ادخال الدرجة اليها ويكون الامر تلقائيا والتكست بوكس يتعامل مع اي عمود بشرط تحديد بداية اول للدرجات والكود يتعامل مع درجتين مثل 15 او 45 فبمجرد الانتهاء من كتابة الرقم الثاني يتنقل المؤشر تلقائيا الى الخلية التي اسفل منها اذا وجدت درجات من رقم واحد مثل 7 يجب كتابتها في التكست بوكس 07 اذا كانت لديك درجات من 3 ارقام مثل 123 يتم التعديل بالكود في الجزء If Len(v) >= 2 Then يتم تعديل 2 الى 3 ادخال الدرجات.xlsb
    3 points
  22. تفضل لعل هذا طلبك مع ان الملف القديم كان يحدد النتائج بمجرد الضغط على زر بحث. تم استبدال أول أسماء الأصناف بكلمات حقيقية لتجربة البحث بالأسم لأن الكل كان يبدأ بحرف ص 3 _ شهر ابريل1 2026.xlsm
    3 points
  23. الإصدار الأول ( لا أعتقد أنه النهائي 😁 ) من اللعبة المطورة لعبة النباتات ضد الثعبان 2026 .. كما رأيتم في الفيديو والصور التي تم طرحها في بدايات تأسيس اللعبة ، هي تجسيد للعبة الثعبان الشهيرة ولكن بنكهة فوكشية خنفشارية .. كيفية اللعب :- 1️⃣ التحكم سيكون بمفاتيح الأسهم في لوحة مفاتيحك ، لتتحكم بحركة الثعبان في الإتجاهات الأربعة . 2️⃣ عليك ان تجمع أكبر نتيجة من اكل التفاح الأحمر . 3️⃣ هناك في ساحة اللعبة تم إضافة مساعدات وأدوات إعاقة ممتعة تتلخص بما يلي :- التفاحة الحمراء = وتعطي اللاعب 10 نقاط ، وتزيد من طول الثعبان . التفاحة الخضراء = وتعطي اللاعب 50 نقطة ، أيضاً تزيد من طول الثعبان . كيس النقود = ويعطي اللاعب 100 نقطة مكافأة 💰 . شعلة النار = تعطي اللاعب 80 نقطة ، ووظيفتها تجميد حركة الوحش في اللعبة 😈 . إكسير التجميد = يعطي اللاعب 50 نقطة ، ووظيفته تجميد حركة النبتة التي تقذف القنابل 🥶 . القنبلة الأرضية = تعطي اللاعب 30 نقطة ، ووظيفتها تفجير صخور الإعاقة التي تعيق حركة الثعبان 💥 . القلب = لا يعطي أي نقاط ، ولكنه يقوم بزيادة عدد أرواح الثعبان في اللعبة ( بحد أقصى 3 أرواح ) ❤ . البوابات السحرية = أيضاً لا تعطي نقاط ، ولكنها تقوم بنقل الثعبان من مكان إلى مكان آخر ( حسب ظهور البوابات ) 🕳 . التاج الملكي 👑 = لا يعطي أي نقاط ، ولكن عند ظهوره في المستوى الـ 20 ( آخر مستوى في اللعبة ) ، فإنه يقوم بإنهاء اللعبة وإعلان الفوز . طبعاً سيظهر في مكان عشوائي ، وعلى الثعبان أكله حتى تنتهي اللعبة . أما المعوقات ، فاكتشفوها بانفسكم 😉 :- 🔴 جميع الصور داخل النموذج هدفها عدم استخدام أي مسار خارجي للصور عند التبديل أثناء الحركة وذلك بهدف تقليل الوميض والترميش . وطبعاً الترميش والوميض مرهون بمواصفات الجهاز . وبالتأكيد الأجهزة القديمة أو البطيئة قد تلاحظ الترميش بشكل أكثر قليلاً من الأجهزة المتوسطة والسريعة . 🔴 مفتاح Esc وظيفته أيقاف اللعبة مؤقتاً ، ونفسه للإستمرار 😎 . 🔴 سهواً سقطت مني الجملة :- KillTimer 0, hTimer في حدث عند الإغلاق للنموذج Frm_Game ، ليصبح الحدث :- Private Sub Form_Close() On Error Resume Next Form_SetComposited Me, False KillTimer 0, hTimer DoCmd.Quit End Sub وفي الختام أترككم مع تجربة اللعبة مفتوحة المصدر .. فقط استخدم مفتاح الشيفت إن أردت قراءة الأكواد أولاً قبل اللعب 😁 . Plants VS Snake.zip
    3 points
  24. بالحل المقدم من الأخ @Foksh ينطبق المثل "قطعت جهيزة قول كل خطيب"
    2 points
  25. تم التعديل و تجريب الكل . تفضل التعديل. Printable ribbon - Reports and forms-1.rar
    2 points
  26. بعد اذن اساتذتي الاساذ / @صالح حمادي والاستاذ / @jjafferr ........ للاستاذين @jo_2010 و @AMINYOUSIF . لانه يوجد تعديلات مهمه مثلاً عند تكبير الخط ستزداد عدد الصفحات .. تم معالجتها . واشياء اخرى ....... ممكن استخدام الماكروهات حسب طلب الاستاذ @jo_2010 . أو الاكواد بدلاً منها حسب طلب الاستاذ @AMINYOUSIF . ...................... لذا وجب عليا التعدبل وارفاق المرفق بعد التعديل . ووافوني بالرد . Print ribbon-last.rar
    2 points
  27. يا اهلا وسهلا بك ظاهرا ، ويا اهلا بك متابعا صامتا 🙂 المنتدى مثل الدكان ، تدخل فيه صامتاً لترى البضاعة ، او تدخل وتشتري ونراك مساهماً 🙂
    2 points
  28. بعد إذن الاخ @mohahje قمت (وبإلاستعانة بالذكاء الصناعي أكيد 😅) بتعديل الكود للحصول على الـ QRCode بلون أسود وخلفية بيضاء كذلك وتنفيذاً لطلب الاخ @jjafferr تم إضافة الكود الخاص بتنفيذ نفس العملية ولكن للحصول على Code128 ارفق لكم ثلاثة ملفات أكسس كالتالي 1 - الملف QR_barcode SubReport يتم فيه تطبيق الحل الخاص بالاخ @jjafferr بإستخدام التقارير الفرعية 2 - الملف QR_barcode Transparent يتم فيه تطبيق الحل الخاص بالاخ @jjafferr بإستخدام الصورة الشفافة 3 - الملف QR_barcode Bmp Images يتم فيه تطبيق الكود الخاص بالأخ @mohahje تم تطبيق الحلول الثلاثة على نفس صورة الخلفية حتى يتم تجربة كل الحلول في نفس الظروف ومقارنتها من حيث سرعة الأداء وتضخم حجم قاعدة البيانات عند زيادة حجم البيانات ارجو من الجميع تجربة الثلاثة ملفات وإبداء أي ملاحظات للتوصل إلى أفضل حل تحياتي BarcodesReports.rar
    2 points
  29. إسمحوا لي بأن أدلو بدلوي في هذا الموضوع بحيث لن أكون متفائل كالأخ @mohammed farhat او متشائم كالأخ @Foksh وأنما أقدر أقول أكثر واقعية الآن إذا ما رجعنا للغاية التي تم من أجلها إنشاء منتديات أوفيسنا وموفع مجموعة مستخدمي أكسس نجد أن أوفيسنا حاله كحال جميع المنتديات العالمية مثل منتدى Microsoft Access Help Center لن تجده يركز على العروض التقديمية لأنه في الأساس قد أنشئ ليجد فيه المستخدم المبتدئ ضالته عندما يريد التعلم أو إيجاد حل لمشكلة تواجهه لذا فستجد أن أغلب أعضاؤه إما أشخاص يطلبون معلومات أو حلول (المبتدئين) أو أشخاص (وهم الأكثر خبرة) يحاولون قدر ما أمكنهم الإجابة على هذه التساؤلات وأغلب أعضاء المنتدى هم من الهواة أي أنهم غير دارسين للبرمجة بل تجد أغلبهم إما معلمين أو محاسبين أو إداريين أي أن تخصصاتهم العلمية هي تخصصات مالية أو إدارية وليست برمجة والأهم من كل هذا أن القائمين على المنتدى هم أشخاص يقومون بعمل تطوعي لايرجون منه إلا الثواب والاجر من الله. على الجانب الآخر فنجد أن موقع مجموعة مستخدمي أكسس هو موقع عالمي (مهمته الأساسية هي العروض التقديمية عبر النت) وهذا يعني (أن القائمين عليه يعملون بدوام جزئي أو كامل) وعالبية أعضائه (خصوصاً من يقدمون هذه العروض) هم من المطورين الذين يقومون بتطوير منتجات مايكروسوفت أو من الحاصلين على لقب MVP من مايكروسوفت لذلك ستجد أن المواضيع التي يقدمونها هي مواضيع إما أنها تختص بالتحديثات المستقبلية التي تقوم بها مايكروسوفت أو مواضيع متقدمة تهم الأشخاص الأكثر خبرة وإحترافية فلو رجعنا الى الموقع او حتى للقائمة التي ذكرها الاخ محمد ستجد أن المواضيع تناقش خارطة طريق تحديثات اكسس أو إستخدام الذكاء الصناعي مع اكسس أو ربط أكسس مع SQL Server... إلخ لذلك عندما نجد أن هناك مبادرات مثل هذه المبادرة أو مثل مبادرة الأخ @Moosak فيجب علينا تشجيعها ودعمها ولكن في نفس الوقت لانتوقع أن يتم التفاعل من جميع الأعضاء فهناك من سيكون غير متفرغاً في وقت العرض ومنهم من لن يكون مهتم بموضوع العرض وعدد لابأس منهم لن يستوعبوا الموضوع لأن مستواه أعلى من إمكانياتهم .... وغيرها من الأسباب ولكن في الأخير (وهذه أهم نقطة يجب التركيز عليها) سنكون قد ربحنا مادة علمية ستكون مرجعاً هاماً وباللغة العربية لكل باحث يريد أن يتعلم أكسس . خلاصة القول والذي أريد إيصاله أنه يمكننا البدء بإنشاء آلية عمل تشبه التحديات الشهرية ولكن بطريقة عكسية فبدل أن يتم ترشيح المواضيع سيقوم كل من يجد نفسه قادراً على إعداد مادة علمية لموضوع معين (أو أكثر) بإنشاء منشور للإعلان عن هذا الموضوع والتاريخ والوقت الذي سيتم فيه العرض وعلى كل من يجد في نفسه الرغبة المشاركة في الحضور أن يبدي رغبته عن طريق الرد على هذا المنشور وإذا رأى صاحب المنشور أنه قد حصل على العدد الكافي يقوم بتأكيد الموعد وطريقة المشاركة مالم فيتم إغلاقه وبهذا يوفر على نفسه التعب والإحباط .
    2 points
  30. أنا أقول : 🙂 أخي محمد @mohammed farhat دامك متحمس .. خذ بزمام الأمور وتبنى أنت الفكرة .. وتوكل على الله .. 😊🖐️ ربما تكون تجاربنا السابقة لها ضروفها الخاصة .. لذلك قد أنت سفينتك وعش التجربة .. 🙂👌
    2 points
  31. سلام عليكم اخي علي محمد علي اشكرك على الرد الكافي والمعادلة التي صلحت معي هي MIN(IF(($C$7:$C$32=$M7)*($G$7:$G$32=""),$E$7:$E$32)) جزاك الله خيرا وجعلها في ميزان حسناتك والسلام عليكم ورحمة الله تعالى وبركاته =MIN(IF(($C$7:$C$32=$M7)*($G$7:$G$32=""),$E$7:$E$32))
    2 points
  32. بدايةً وعليكم السلام ورحمة الله وبركاته.. وأتمنى أن لا تكون كلماتي في ردي هذا محبطة لك ولجهودك ، وأن لا تكون كالملح فوق الجرح مؤلمة .. وكما اختصر الكلام في قسمنا هذا ، مشاركة وتفاعل الكثيرين من منتسبي قسم الآكسيس . فإن قسمنا - مع احترامي للجميع - يفتقر الى روح المشاركة والمعنوية التي تجعلنا نُقدم على هذه الخطوة . فأغلب التفاعلات هنا مجرد :- يدخل البعض ليبحث عن موضوع لم يشارك به أحد ، وكأنه ماراثون "كلمة مقتبسة" . يدخل البعض أيضاً لا يكلف نفسه حتى عناء البحث باستخدام ميزة البحث في المنتدى. فتراه يرمي موضوعه دون شرح او توضيح كافي ، أو أحياناً دون مرفق . وهذا النوع لا لوم عليه من التفاعل في أي مواضيع لأنه يبحث عن معلومة . ترجمة رقم عدد الزيارات للمواضيع المطروحة ، تدل على أن الأغلبية لدينا في قسمنا ، جمهور صامت !! حاله كحال جمهور في مباراة كرة قدم دون أي تفاعل ولا حتى كمشجع ، وقد يكون أحياناً غير منتقد أيضاً 😅 . ينقصنا في قسم الآكسيس شيء واحد فقط وهو ، الترابط الاجتماعي . فأحياناً كثيرة نجد أن معظم الردود تؤخذ على محمل شخصي ، ولا تؤخذ على محمل أن اختلاف وجهات النظر لا يُفسد للودّ قضية . لذا أتمنى أن نلمس في القسم صحوة للكثيرين بتفاعلهم ومشاركاتهم بأفكارهم ، ليس فقط في الردود وكأننا آلات مبرمجة على مبدأ سين سؤال وجيم جواب . وحتى لا ينزعج أحد من ردي هذا ، فقد أكون أولكم ممن تلمسه جميع الملاحظات ، ولا أزكي نفسي عليكم بل أول المقصّرين . شكراً لمن قرأ للنهاية ، ووصل الى هذا الحد بصدر رحب ، وعلى من لا يأخذ كلامي وكأنه المقصود 💐 .
    2 points
  33. أخي الفاضل .. عادةً تعطى النتيجة بـ للإجابة والمشاركة التي حققت طلب صاحب الموضوع ، لأسباب متنوعة . أهمها أشعار من يقرأ الموضوع بأن المشكلة قد تم حلها في الإجابة كذا . أيضاً كنوع من الدعم والشكر لصاحب الإجابة التي حققت طلبك كاملاً .. وأعلم أن اختيارك لإجابتك في هذا الموضوع هو عن دون قصد .. ولكن وجب مني التوجيه فقط لا غير ، بأن تصوب الإختيار لأستاذ عبدالله بشير عبدالله .
    2 points
  34. لو سمحتم لي بإبداء الرأي فلنبدأ من حيث انتهي الاخرون هذا الرابط به اجنده للمواضيع المستقبلية التي سيتم مناقشتها في الاجتماعات https://accessusergroups.org/calendar/list/ فلو تم عمل استبيان و يتم تجميع المواضيع التي يمكن مناقشتها و يتم عمل ترتيب للاولوية لها ثم بتم نشر قائمة بأجندة الموضوعات كما في المجموعة الاروبية و لا يوجد ما يمنع من نأخذ منهم بعض الموضوعات كبداية استرشادية - هذا مجرد بداية اقتراح لعمل تفاعل بين الاعضاء و تبادل الخبرات و المعلومات بصورة اقوي قليلا مما هو موجود حاليا و جزاكم الله خيرا
    2 points
  35. هذا هو أحد الامثلة على الاجتماعات لجروب مستخدمي برنامج الاكسس في أوروبا
    2 points
  36. السلام عليكم ورحمة الله وبركاته أود أن أحيطك علماً بأن جميع ما قمت به من حلول في المشاركات السابقة، كانت اجتهاداً شخصياً مني ، وذلك بسبب عدم شرح تفاصيل الطلب بدقة، وغياب الشكل المتوقع للمخرجات في بداية طلبك في اول مشاركة. وهنا أود أن أسترعي انتباهك ولجميع احبابنا اعضاء المنتدى الكريم لنقطة تنظيمية وإدارية هامة : عند طرح أي سؤال أو طلب فكرة برمجية مستقبلاً، من الأفضل دائماً تجهيز ورقة عمل (شيت) داخل الملف كنموذج تصوري للنتائج، أو شرح آلية ومكان ظهور المخرجات بدقة (مثل: شكل الجدول المطلوب، وتحديد الأعمدة، وهل تريدها في نفس الورقة أم في أوراق منفصلة؟). وهذا يضمن اختصار الوقت والجهد وتفادي كثرة التعديلات المتكررة. وتكون النتائج تماماً كما تريدها وبتنسيقها الصحيح وتفاعل اعضاء وخبراء المنتدى اكثر. على أية حال، حسب فهمي لطلبك في مشاركتك الأخيرة؛ فقد تم دمج الفعاليات النشطة واللجان الخاملة معاً في شيت واحد متكامل، كما تم تعديل عدد اسماء المشاركين الى 15 عمود في طلب سابق لكم. تقبل وافر شكري، وعميق تقديري لشخصكم . لا تتردد في طلب التعديل ان كان الحل لا يلبى طلبك مؤشر عمل اللجان1 (1).xlsb
    2 points
  37. السلام عليكم ورحمة الله وبركاته اظافة الى حل استاذتا اأبومروان حيث يثمثل الحل بطريقتين اذا اردت معرفة عدد الندوات التي شارك بها اي مشارك واحد انقر على اي اسم مرتين تظهر رسالة بعدد المشاركات والغعاليات اما اذا اردت كل المشاركين يوجد زر يقوم بانشاء ورقتين احداها لكل المشاركين والاخرى للفعاليات توجد بعص الفعاليات بها اكثر من لجنة (تعاون) ولإعطاء كل لجنة حقها؛ ففي حال تنظيم فعالية مشتركة بين أكثر من لجنة (مثل: لجنة الكتاب والنشر - ثقافة الطفل - الشباب "تعاون"), يجب أن يتم احتساب هذه الفعالية لصالح كل لجنة من اللجان المذكورة بشكل مستقل ومستساغ، بدلاً من قراءتها كنص واحد لكما كل التقدير والاحترام مؤشر عمل اللجان.xlsb
    2 points
  38. كما يقول المثل (تاهت ولقيناها) بإستخدام المثال الخاص بالأخ @jjafferr قمت بتعديل الحل كما ستجد في المرفق لاحظ أنه عند فتح المجلد ستجد أنه لايحتوي إلا على التطبيق قم بفتحه وتجربة إيقاف العجلة ستجده يعمل بشكل صحيح وعند إغلاق التطبيق لن يكون هناك أي ملف إلى جواره أعتقد بهذه الطريقة لن يلاحظ المستخدم أي شيئ إيقاف عجلة الماوس.rar
    2 points
  39. اختصارا للوقت ...... جرب المرفق التالي ..... يتم تكوين جدول بالمواد مهما كان عددها في الجدول <><><><><><><><><><><><> KAN_2.accdb
    2 points
  40. السلام عليكم ورحمه الله وبركاته جزاك الله خيرا اخي أبومروان ويبدو ان الاداة ليست اضلية بمعنى ان مايكروسوفت لم تصدر أي تحديث يضيف XLOOKUP للإصدارات القديمة وتنزيل ملفات من مواقع غير رسمية قد يحمل مخاطر (فيروسات، أكواد ضارة). حاولت تحميل الملف اكثر من 6 مرات يقوم برنامج الحماية بحذفه بسبب وجود فيروس حسب نتيجة برنامج الحماية ولهذا لم اتمكن من الاطلاع على الملف للاستفاذة منه تحياتي
    2 points
  41. أولا .. أسعد اللحظات هو مرور السادة الكرام أمثالكم وثنائهم العاطر 😊🌹 والأسعد هو بسطكم لهذه العبارة والتي ينطق بها خبير وهو يعلم أن البضاعة مزجاة .. 😅🖐 بارك الله فيك أستاذنا العزيز .. مروركم تشريف ومنطوقكم وسام شرف 🙂🏆 لولا فضل الله ثم هذا التحدي لوجدتني أدور في نفس الدوامة المغلقة 😅 الشكر لحبيبنا @Foksh هو كان السبب 😂👊🌹
    2 points
  42. تفضل طلبك حسب ما فهمت Documents_BARNA.rar
    2 points
  43. كما هو ظاهر نقص في المكتبات لديك تفضل اعداد آخر ولكن اعتقد ستواجه المشكلة نفسها وايضا الفكرة على ملف اكسس Project1.rar حساب تاريخ الحمل.rar
    2 points
  44. يوجد لطلبك حلين الأول حل بسيط وهو مجرد مضاعفة إرتفاع الصف ليشغل كل صف مكان صفين الحل الثاني برمجي ويعتمد على قيمة مربع النص (م) أي المسلسل بحيث يتم فرض صفحة جديدة عندما تكون قيمة المسلسل يقبل القسمة على 10 بدون باقي ملاحظة إضافية الحل الذي كان موجود في مثالك فيه مشكلتين الأولى أنه يقوم بإخفاء السجلات التي بعد السجل العاشر ولا يقوم بنقلها إلى الصفخات التالية والمشكلة الثانية تخص اللغة فيبدو أنك نسخت الكود من مثال من نسخة اوفيس انجليزية والملف المرفق تم إنشاؤه في أوفيس نسخة عربية لذلك فالكود التالي مثلاً Private Sub Detail_Format(Cancel As Integer, FormatCount As Integer) ' زيادة العداد بمقدار 1 لكل سجل intRecordCount = intRecordCount + 1 ' تغيير الرقم 10 إلى أي عدد تريده (20، 50، 100...) If intRecordCount > 10 Then ' ?? غير هذا الرقم حسب حاجتك ' إلغاء طباعة هذا السجل وما بعده Cancel = True End If End Sub يجب أن يكون بهذا الشكل Private Sub تفصيل_Format(Cancel As Integer, FormatCount As Integer) ' زيادة العداد بمقدار 1 لكل سجل intRecordCount = intRecordCount + 1 ' تغيير الرقم 10 إلى أي عدد تريده (20، 50، 100...) If intRecordCount > 10 Then ' ?? غير هذا الرقم حسب حاجتك ' إلغاء طباعة هذا السجل وما بعده Cancel = True End If End Sub لاحظ إسم المقطع (Detail سيصبح تفصيل) وهذه الملاحظة جانبية حبيت أضيفها لتنبيهك فقد تقوم بالإستفادة من أكواد أخرى مشابهة لهذا وعند تجربتها تجدها لا تعمل فتظن أن الكود غير صحيح والسبب لايكون منه تحياتي New Microsoft Access Database.accdb
    2 points
  45. السادة الزملاء : مرفق دالة التفقيط بدون اكواد كل ما عليك ان تدرج الشيت المرفق فى اى ملف اكسيل تريد تفعيل دالة التفقيط بدون اكواد ولو نسخة الاكسيل 2021 فيما فوق يتم استخدام دالة مخصصة اسمها tafkeet Tafqeet_Dynamic_System (1).xlsx
    2 points
  46. تفضل الملف بعد التعديل . كان فيه أخطاء كثيرة جدا في ارتباط الخلايا في اليوزرفورم مكتب_المحامي للتعديل2.xlsm
    2 points
  47. طيب ايش هي المشاكل ,, انت الآن طلبك كالآتي :- 1. حساب عدد الخلايا الغير فارغة لكل لون في الأعمدة . صحيح ؟؟ الآن المشاكل التي تقصدها :- 1. عند تغيير لون الخلية لا يتم تحديث القيم في أعداد الخلايا التي كتبنا فيها المعادلات ، صحيح ؟ يعني انت تريد عند التغيير للون أي خلية ، أن يتم التعديل مباشرة في أعداد الألوان في الأعمدة ؟؟؟؟؟؟؟؟؟؟؟؟؟ وهنا المشكلة أخي الكريم .. فتغيير اللون ليست حدث أو قيمة يشعر بها آكسل للأسف وبالتالي لن يتم تحديث التعداد إلا إذا !!!!!! في حدث عند التحديث للورقة ، كالتالي :- Private Sub Worksheet_SelectionChange(ByVal Target As Range) Application.Calculate End Sub قمنا بإعادة حساب كل الصيغ والمعادلات في الورقة مرة أخرى ، بمجرد أن تقوم بالتحرير داخل اي خلية ، ثم الخروج . خلاف ذلك لا اعتقد ان ذلك ممكن .
    2 points
  48. بكل الأحوال .. إن كان ما سبق صحيح ، فقط علينا إضافة شرط للجملة الشرطية بحيث تصبح :- If c.Interior.Color = clr.Interior.Color And Trim(c.Value) <> "" Then بداً من :- If c.Interior.Color = clr.Interior.Color Then
    2 points
×
×
  • اضف...

Important Information