اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

Moosak

أوفيسنا
  • Posts

    2175
  • تاريخ الانضمام

  • تاريخ اخر زياره

  • Days Won

    55

كل منشورات العضو Moosak

  1. لله درك أستاذنا @أبو إبراهيم الغامدي 🙂 بل هو فتح كبير 😀 سنحتاج لتطوير هذه النقطة إن شاء الله والبحث في موضوع المشاركة هو مطلب كبير أيضا لأن أغلب مواضيع البحث إجاباتها في التعقيبات وليس العناوين فقط .. 🙂 وهناك ملاحظة أخرى .. مربع البحث يستجلب البيانات ويضيفها للجدول وعند البحث بكلمة أخرى لا يفلتر النتائج حسب البحث الجديد بل يضيفها لما سبق .. وبارك الله جهودك الطيبة 🙂
  2. تحسين بسيط على الكود .. وهو حتى كلمات البحث تطبق عليها دالة تجاهل الهمزات 🙂 فلو كتبت في البحث ( أحمد ) تظهر جميع النتائج .. أحمد .. احمد .. إحمد .. وهكذا .. بحث بعدد 3الكلمات.rar
  3. بالنسبة لي سأساهم في هذا الجزء بدالة تقوم بتوحيد الحروف المتشابهة إلى حرف واحد وذلك لتلافي موضوع أخطاء الطباعة : 🙂 Function ReplaceArabicLetters(strText As String) As String ' استبدال الحروف العربية المتشابهة إلى حرف واحد وذلك لاستخدامها في عملية البحث وتلافي أخطاء الكتابة ' أ،إ،ا =(تحول إلى)=> ا ' ي،ى =(تحول إلى)=> ي ' ـه،ـة =(تحول إلى)=> ـه ' Moosak strText = Replace(strText, "أ", "ا") strText = Replace(strText, "إ", "ا") strText = Replace(strText, "ى", "ي") strText = Replace(strText, "ة", "ه") ReplaceArabicLetters = strText End Function مثال : ReplaceArabicLetters("أجمل إنسان في الحياة من ينسى الأحزان ويعيش الأمل") النتيجة : اجمل انسان في الحياه من ينسي الاحزان ويعيش الامل
  4. أخي @ابو عبد الرحمن اشرف استخدم المعايير في الاستعلامات .. ضع مثلا تحت حقل الشقق التالي : Not In(1308, 1307, 1302) وهكذا .. تضيف الأرقام التي لا تريدها أن تظهر بين القوسين. 🙂
  5. هنا أنت تقارن بين شيئين مختلفين لا علاقة بينهما ، التقسيم الهدف منه التمكين من عمل أكثر من مستخدم على نفس قاعدة البيانات ، أما تحويل القاعدة لـ accde لحماية عناصر البرنامج من التحرير ومنع المتطفلين. انتبه ثم انتبه ثم انتبه .. !!! هذه نقطة مهمة جدا جدا حتى لا تقع في الفخ !!! 🙂 يجب أن تحتفظ بنسخة accdb معك قبل أن تحول البرنامج الى accde ، لأن نسخة accde لايمكن تحريرها أو التعديل عليها بأي شكل من الأشكال .. هي نسخة مقفلة لاستخدام العميل فقط .. وأنت كمبرمج يجب أن تحتفظ عندك بالملفات الأصلية القابلة للتعديل ..
  6. وعليكم السلام ورحمة الله وبركاته .. 🙂 من خصائص النموذج حسب الصورة تختارون Edited Record وليس All Records
  7. وعليكم السلام ورحمة الله وبركاته 🙂 عن طريق استعلام إجماليات .. تحت الاسم (تجميع حسب) وتحت أرقام السجلات (max)
  8. أهلا بك أخي معتز 🙂 .. الهدف الرئيسي من عملية ربط الجداول ببعضها هو أن لا يتم تكرار إدخال نفس البيانات أكثر من مرة .. بل تدخلها مرة واحدة في جدول واحد .. ثم تربط الجداول الأخرى التي ستستخدم نفس المعلومات بالجدول الرئيسي عن طريق الحقل الذي يحتوي على الرقم الذي لا يمكن أن يتشابه به شخصين ( كالرقم المدني - الرقم الوظيفي - ... الخ ) فالأصل أن يكون واحد من هذه الجداول العشرة هو الجدول الرئيسي (جدول الموظفين) الذي ستدخل فيه بيانات الموظفين ( الرقم الوظيفي (المفتاح الأساسي) - الاسم - ............ وبقية البيانات ) ثم تربط الجداول التسعة بحقل الرقم الوظيفي الذي في (جدول الموظفين) .. بحيث يكون كل جدول يحتوي على حقل الرقم الوضيفي ( نوعه رقم - وليس مفتاح أساسي ) .. بعلاقة نوعها من واحد إلى متعدد ... أي الرقم الوظيفي الواحد يمكن استخدامه بشكل متعدد لا نهائي في الجداول التسعة ( مثال : الموظف الواحد يمكن إضافة عدد لا نهائي من الإجازات له في جدول الإجازات ) ... وهكذا ... والربط يكون من خلال نافذة العلاقت في البرنامج :
  9. حسب نظام الصلاحيات عندك .. لو كان عامل للمدير صلاحيات خاصة تطبقها عند فتح النموذج .. مثال : If [forms]![LoginForm]![IsManager] = True Then Me.AgreeCbo.Visible = True Else Me.AgreeCbo.Visible = False End If بمعنى التحكم يكون بخاصية الظهور Visible للقائمة المنسدلة .. والطرق كثييييييييرة ومتنوعة 🙂
  10. وعليكم السلام ورحمة الله 🙂 ممكن تعمل حقل عبارة عن قائمة منسدلة بها الـ 3 خيارات اللي ذكرتها (موافق - غير موافق - للتريث ) .. وتكون ظاهرة للمدير فقط .. ويمكنك أن تفلتر السجلات عليها ..
  11. الحمدلله على سلامتك حبيبنا 🙂 عودا حميدا 🌹
  12. البرنامج محول إلى الصيغة accde .. لايمكن فتحه .. يجب أن ترجع للمصمم الأصلي للبرنامج وتطلب البرنامج بصيغة accdb
  13. تعديل على ملف الأستاذ @kkhalifa1960 🙂 جرب الآن الملف .. ( قبل وبعدما تقسمه ) attention.rar
  14. تفضل أخي @waheidi2005 🙂 تكتب في القيمة الافتراضية للحقل tno هذه الجملة : =Nz(DMax("[tno]";"[tbltameem]");0)+1
  15. بارك الله فيك أخي @qathi 🙂 إذا أفضل إجابة تذهب للعزيز @saud3 🌹😉
  16. حياك الله أخي أبو طلال 🙂 لم أجد الجدول الذي به تواريخ البداية والنهاية في مرفقك .. ولكن عملت لك دالة تحيب عدد الأيام بين تاريخين بدون أيام السبت والأحد ... وكذلك تتجنب أيام الإجازات الرسمية حسب الجدول الذي في قاعدتك .. Function CountWorkingDays(startDate As Date, endDate As Date) As Integer ' لحساب عدد الأيام بين تاريخين غير أيام السبت والأحد والإجازات الرسمية الموجودة في جدول الإجازات Dim totalDays As Integer Dim workingDays As Integer Dim currentDay As Date startDate = Format(startDate, "mm/dd/yyyy") endDate = Format(endDate, "mm/dd/yyyy") totalDays = DateDiff("d", startDate, endDate) + 1 ' Include both start and end dates Dim i Dim c For i = 0 To totalDays - 1 currentDay = DateAdd("d", i, startDate) ' البحث في جدول أيام الإجازات إن كان هذا اليوم هو يوم إجازة أم لا c = DCount("[ID]", "[Holidays]", "CDbl(date) =" & CDbl(currentDay) & "") If Weekday(currentDay) <> vbSaturday And Weekday(currentDay) <> vbSunday And c = 0 Then workingDays = workingDays + 1 End If Next i CountWorkingDays = workingDays End Function
  17. وهنا فكرة أيضا .. شاشة انتظر من فضلك !! | سلسلة مهارات في أكسس | 06 |
  18. تفضل أخي عبد القدوس .. ممكن تعملها عن طريق التنسيق الشرطي 🙂 : والنتيجة ( لا يمكن تحرير البيانات ..... وتبقى مجمدة حتى يتم تغيير خانة مشطوب) : قاعدة البيانات.accdb
  19. نفس الشي وما صارت عندي أي مشكلة ..
  20. طريقة الاستدعاء مكتوبة في الكود نفسه أخي أمين 🙂 : 'to call the Function 'To Hijri التاريخ الهجري 'txtMonthNameHijri =MnthName(txtDate,"HJ") 'To Arabic التاريخ بالعربي 'txtMonthNameArabic =MnthName(txtDate,"Ar") 'To English الإنجليزي 'txtMonthNameEnglish =MnthName(txtDate,"En") 'To English Short الإنجليزي المختصر 'txtMonthNameEnglish =MnthName(txtDate,"EnShrt") 'To Coptic القبطي 'txtMonthNameCoptic =MnthName(txtDate,"Cpti") 'To Syriac السرياني 'txtMonthNameSyriac =MnthName(txtDate,"Syr")
  21. أو يمكن الضغط على [زر الويندوز] + D من الكيبورد لإظهار سطح المكتب مباشرة 🙂
  22. لا يا أخي @ابو عبد الرحمن اشرف العكس .. 🙂 الذي سيظهر للمستخدمين هو ملف النماذج فقط .. أما ملف الجداول سيكون بعيد عن أعين المستخدمين .. فقط ستحتاجه أنت كمصمم البرنامج لربط نسخة النماذج ( الواجهات ) بنسخة الجداول .. هذا سؤال خارج عن موضوعنا هنا 🙂 إرجع للموضوع الأصلي .. أو إفتح موضوع جديد 🙂
  23. أول مرة أفهم عليك أيش تقول 😂 على أية حال أخي @ابو عبد الرحمن اشرف .. لو كنت تقصد أنه لو عطبت نسخة الجداول BE وأردت إعادة الربط بالنخة الاحتياطية .. فأنت تحتاج في هذه الحالة لكود البحث عن نسخة ال BE وإعادة ربطها بنسخة الواجهة .. وهناك عدة أفكار لذلك .. وفي الرابط التالي ستجد فكرتين .. واحدة لأستاذنا جعفر والأخرى للعبد الفقير .. لكيفية تخزين عناوين قواعد البيانات الخلفية ثم إعادة الربط بها حسب حاجة المبرمج :
  24. أخي @ابو عبد الرحمن اشرف بالعكس .. المجلد المشترك في الشبكة يكون فيه ملف الجداول .. أو ال Back End .. أما الملف الذي ستوزعه على المستخدمين هو ملف الواجهات ( النماذج والتقارير والاستعلامات والأكواد والماكرو ) وهذه صورة مختصرة توضح الآلية .. :
×
×
  • اضف...

Important Information