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

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

  1. jjafferr

    jjafferr

    أوفيسنا


    • نقاط

      10

    • Posts

      9934


  2. ابوآمنة

    ابوآمنة

    الخبراء


    • نقاط

      9

    • Posts

      713


  3. kaser906

    kaser906

    الخبراء


    • نقاط

      8

    • Posts

      1411


  4. qassim-t

    qassim-t

    03 عضو مميز


    • نقاط

      6

    • Posts

      103


Popular Content

Showing content with the highest reputation on 07/19/19 in all areas

  1. مشغل صوتيات أرجو أن ينال استحسانكم متروك للتطوير وابدا الرأي اللون الأسود لمناسبة لون الشاشة فقط لا اكثر ولا أقل طريقة عمل البرنامج أولا اضافة سجل ثم كتابة اسم الملف الصوتي والضغط على حفظ حتى يحفظ المسار بالقاعدة للرجوع إليه فيما بعد إذا اردت تشغيله مرة أخرى فقط تختارة من القائمة اتركم مع البرنامج والله ولي التوفيق MediaOfficena.accdb
    2 points
  2. وعليكم السلام 🙂 تفضل: . جعفر تجريب.zip
    2 points
  3. الف . الف . مبرو اخ خالد ..... مزيد من التألق ...
    2 points
  4. اتفضل الرابع والخامس مفتوحى المصدر العطاء للتقسيط.zip
    2 points
  5. تحديث جديد تم إضافة شريحة السعر في نموذج الفاتورة :
    2 points
  6. الدالة الغبية والدالة العبقرية الدالة () DLookup والدالة () ELookup هل تصدق ان هناك دالة غبيه قد تستغرب ان اقول لك انها دالة () DLookup والكل منا يعرفها ويعرف استخداماتها فهي ببساطة تعيد او تسترجع قيمه واحدة من الجدول . عيوبها : 1. تعيد اول قيمة فقط تم وضعها في الدالة في عملية البحث . 2. لا تستطيع بإي حال من الاحوال اعادة الحقل المفهرس . 3. قد تحصل على نتائج متناقضة ومتقلبة حتى من نفس نوع البيانات التي تبحث عنها اذا كان لا يوجد مفتاح اساسي في الجدول وقمت بعملية ضغط قاعدة البيانات . ( جرب بنفسك وأنظر النتائج الغبية التي تعطيك هذه الدالة ) . 4. اداء هذه الدالة سيئ للغاية فهو لا يقوم بمسح ما تم البحث عنه سابقا ويفترض ان تكون القيم خالية بعد عملية كل بحث . 5. ظهور العديد من الاخطاء والرسائل من الاكسيس عندما تكون القيم خاليه . الدالة () ELookup العبقرية هل احد منكم سمع عن هذه الدالة ( دالة جديده تم اختراعها ) لنرى إمكانات هذه الدالة 1. قمة في الاداء والابهار والقوة والمتانة والمرونه . 2. تسمح لك بتحديد اي نوع من البيانات ولا تتقيد يحقول معينه . 3. تسمح لك بإستخدام الاقل MIN والاعلى MAX من القيم . 4. بعد عملية البحث والبدء بعملية استخدام جديده تجد القيم خالية وجاهزة لتقبل اي امر . 5. اسرع من الدالة () DLookup بعشر مرات . 6. قد ترغب في تعديل مسار البحث قبل استعمال الدالة فتستطيع ذلك بدون ظهور رسائل MsgBox لكل صف . 7. تقوم هذه الدالة بتمييز وتحسس ومعرفة ان هذا الحقل Zzero-length( طول صفري ) او خالي من البيانات Null . 8. اذا استخدمت في الاستعلامات فأنظر الى النتائج الباهره حتى لو استخدمت معها اربعة معايير مختلفه . قد يكون عيبها الوحيد انها تحتاج الى مكتبة DAO وهذا ليس بعيب ولكن لانها ليست من دوال برنامج الاكسيس . امثلة على طريقة استخدامها 1. ايجاد القيمة الاخيرة متضمنة الـ DESC ELookup("[Surname] & [FirstName]", "tblClient", , "ClientID DESC") اذا رغبت في اضافة حقول اضافية قم بالاضافة فهي تقبل جميع الحقول ولا تقتصر على حقل معين 2. ايجاد القيم الاقل الغير خالية Null بإستعمال المعايير ELookup("ClientID", "tblClient", "Surname Is Not Null" , "Surname") واليكم الدالة الجباره بكل معنى الكلمة ويفضل مقارنة نفس النتائج مع الدالة السابقة لتروا الفرق كل ما عليك هو وضعها في وحدة نمطية ومن ثم استخدامها سواء في النماذج او الاستعلامات او التقارير او الماكرو . Function ELookup(Expr As String, Domain As String, Optional Criteria, Optional OrderClause) On Error GoTo Err_ELookup ' DAO ملاحظة: تحتاج الى مرجع مكتبة Dim db As DAO.Database Dim rs As DAO.Recordset Dim strSql As String 'بناء جملة الاستعلام strSql = "SELECT TOP 1 " & Expr & " FROM " & Domain If Not IsMissing(Criteria) Then strSql = strSql & " WHERE " & Criteria End If If Not IsMissing(OrderClause) Then strSql = strSql & " ORDER BY " & OrderClause End If strSql = strSql & ";" 'البحث عن القيم Set db = DBEngine(0)(0) Set rs = db.OpenRecordset(strSql, dbOpenForwardOnly) If rs.RecordCount = 0 Then ELookup = Null Else ELookup = rs(0) End If rs.Close Exit_ELookup: Set rs = Nothing Set db = Nothing Exit Function 'zahrah Err_ELookup: MsgBox Err.Description, vbExclamation, "ELookup Error " & Err.Number Resume Exit_ELookup End Function
    1 point
  7. السلام عليكم ورحمه الله ارجو من الساده الاعضاء المساعده حيث اننى فى نفس المشكله قد صممت برنامج خاص بورشه مركزيه لصيانه المعدات واوحه نفس المشكله من تكوين استعلام مبنى على اكثر من جدول ولكن للاسف يعطى بيانات مكرره ارجو الافاده
    1 point
  8. يفيدك في أي امر تريده أنت أخي العزيز تقبل تحياتي
    1 point
  9. ممنون منك استاذي الفاضل وفيت وكفيت يا طيب شكرا جزيلا لك مرة ثانية جزاك الله كل خير
    1 point
  10. الله يبارك فيك استاذي الفاضل جزاك الله كل خير وشكرا جزيلا لردك السريع
    1 point
  11. اخي @حربي العنزي بهذه الطريقة الموجودة في الجدولين المرفقين في الموضوع فلا يمكن ذلك .... لان جدول الاسماء ليس بينها وبين جدول البيانات اي رابط ... لا عن طريق الاسم او رقم فريد .....
    1 point
  12. ضع النقطة في المكان حيث الخطأ في الكود بين الكلمتين ( sNomFichier و PDF) sNomFichierPDF sNomFichier.PDF
    1 point
  13. حقولك جاجة اعمل زرين فوق كل نموذج عند الضغط على احدهما بيظهر لك النتائج فوق 90...والزر الاخر بيظهر لك النتائج في تقرير لاقل من 90 انت لازم بتحاول عشان تتعلم زيي هههههه
    1 point
  14. انا مجرد خليت لك مثال بالنسبة الى 90=> ، وإلا فانت كنت تريد 89=> 🙂 محتاج مجموعة امثلة ، لأن طلبك غير واضح !! جعفر
    1 point
  15. الكود يقوم بهذا ايضاً لكن النتيجة تكون في العامود (ما قبل الاخير) العامود AP
    1 point
  16. الجدولين ليس بينهم علاقه ..... اذن على اي اساس يكون الوصل رقم 1 لحارث أم جميل أنظر ......
    1 point
  17. حياك الله أخي سمير تم إجراء بعض التعديلات بناء على ملاحظاتك القيّمة و فيما يلي الرابط : الرابط الدائم لبرنامج الخليل المحاسبي "متجدد" آمل التجربة وتزيدي بملاحظاتك
    1 point
  18. جرب هذا ... Me.Recallsales = Nz(DMax("[Recallsales]", "InvoiceHeader", "[PayType]='" & [PayType] & "'"), 0) + 1
    1 point
  19. شكرا استاذى العزيز تم عمل القائمة المنسدلة وتم تغيير Accept و Ref بكلمتى تم الصرف / تم الرفض والكود يعمل بكفاءة شكرا لك استاذى الحبيب
    1 point
  20. تستاهل كل خير استاذ kha9009lid الف الف مبروك الترقية اللهم ربي يحفظكم جميعا يارب
    1 point
  21. 1 point
  22. مبروك أستاذنا الكريم وأعانك الله ووفقك
    1 point
  23. هذا التشجيع ، وإلا بلاش 🙂 ها ، في احد يقبل هذا التحدي 🙂 جعفر
    1 point
  24. وعليكم السلام مبارك عليك الترقية استاذ خالد نفع الله بكم ومنها للأفضل .
    1 point
  25. معلمي الجليل @أبو إبراهيم الغامدي تحية طيبة سرني مرورك على الموضوع وتعليقك المشجع لي ولأمثالي وما نحن إلا حسنة من حسنات علمكم أثلج صدر طريقة تفكيرك واستخدامك في أحد برامجك بدمج لغة VBA بلغتي html مع css فقمت قبل مدة بمتابعتك لأحصل على هذا الجديد ، وتصفحت بعضاً من مواضيكم القديمة كل هذا بصمت واستفدت من بعضها فشكراً لكم من الأعماق بثثت هذه التجارب لنراها فلم تكون حبيسة فكرك فأردت أن تشاركنا تجاربك ، فنماء العلم نشره وتزكيته ، فبارك الله في علمك وعملك وأهلك ومالك . ________________________________________________________________________ باختصار من هذه المسودات والمخططات وغيرها انطلق هذا المشروع المبارك وشعاري ( التخطيط قبل التصميم ) . لا أخفيك سراً هذا المشروع ليس وليد يوم ولا يومين ولا أسبوع ولا أسبوعين وإنما وليد سهر بالليالي وتفكير لدرجة أني اتحلم فيه . وحيث جاءت الفكرة بعد عيد الفطر 1440 بعد تصفحي لمكتبتي فوقعت عيني على مشروع أبوخليل فاطلعت على مجرى البرنامج وكيف يسير اعجبتني فكرته بعمل اختصارات كثيرة ودمج 4 عمليات في نموذج واحد ووضعت هذا في الحسبان وسرت عليه فقمت بتطويره ، فأي مشكلة تواجهني أحاول حلها أولا والبحث عنها في هذا المنتدى أو منتديات أجنبية فإذا لم أجد حلاً قمت بإنشاء موضوع جديد لأسألكم عنه فلم يبخل معلمينا بالمساعدة . فقمت بعمل مخططات ، ومشاهدة بعضاً من البرامج ، واختصرت بعضاً من العمليات ؛ ليخرج لكم هذا المشروع .
    1 point
  26. الف . الف . مبرو اخ خالد ..... مزيد من التألق ...
    1 point
  27. مبارك الترقية للأستاذ خالد وربنا يعينك على التكليف الجديد ترقية مستحقة ان شاء الله ومنتظر منك المزيد دائما
    1 point
  28. مبروك اخي الكريم أعانكم الله على حمل المسؤولية
    1 point
  29. يستاهل كل خير أخوي @kha9009lid ألف مبروك الترقية وعقبال إن شاء الله تصبح وزير أتمنى لك التوفيق
    1 point
  30. كل مالدي من معلومات انما يعود الفضل فيه بعد الله اليكم استاذي الكريم 🌹
    1 point
  31. شكرا على هذه المعلومة 🙂 جعفر
    1 point
  32. صحيح اخوي كاسر ، ولكنه يقدر يفتح برنامج الاكسس (مو برنامجه) من قائمة Microsoft Office (او اي برنامج اكسس) ، ويقوم بعمل مجلد التوثيق منه 🙂 وسأقوم بإضافة هذه الفقرة على مشاركتي السابقة ، حتى تكون المعلومة متكامله هناك 🙂 جعفر
    1 point
  33. السلام عليكم 🙂 هكذا يمكنك عمل مجلد موثوق به على جهازك : . اذا شغلت البرنامج من مجلد غير موثوق به ، فلما تفتح البرنامج لأول مرة ، يعطيك هذا الشريط الاصفر ، والذي يجب ان تنقر على زر "تمكين" : . ولكن وللأسف الشديد ، فمعظم المبرمجين يقومون بعمل خاطئ وشائع ، بجعل النموذج منبثق ، والذي يملئ الشاشة بالكامل ، مما يجعل الشريط خلف الصورة ، فلن تراه ، واستعمال "شكلي او مشروط = نعم" ، مما لا يسمح لك ان تعمل اي شيء في الشاشة !! فيمكنك عمل التالي (اذا كنت محظوظ ولم يقفل عليك المبرمج هذه الطريقة) : امسك مفتاح الشفت على الكيبورد ، ثم انقر مرتين على ايقونة البرنامج لفتحة ، ولا تترك الشفت الى ان يفتح البرنامج ، ثم اعمل مجلد موثوق به (كما في الصورة اعلاه) ، ثم اغلق برنامجك ، ثم انقل برنامجك الى ذلك المجلد الموثوق به ، وافتح البرنامج من هناك 🙂 جعفر معلومة اضافية : او افتح برنامج الاكسس من قائمة Microsoft Office ، وقم بعمل مجلد التوثيق منه 🙂
    1 point
  34. ممكن تجرب الخطوات التالية اعمل مجلد جديد على سطح المكتب ضع البرنامج بداخله ثم قم بالخطوات التالية حسب الصور اختر المجلد الذي يوجد به البرنامج وجرب شغل ممكن هذي تفيد معاك اذا كان قسم الاتي مفعل خاصية السماح بالمواقع الموثوقه على السيرفر ::بالتوفيق::
    1 point
  35. في اعتقادي هذا هو السبب لن يعمل معك البرنامج حتى تتواصل مع قسم الـ It بالشركة وتطلب منهم اعطاء صلاحيات لجهازك لتشغيل التطبيقات التي تحتوي على تعليمات برمجية ::بالتوفيق::
    1 point
  36. اخي العزيز مصطفى...هل تقصد انك اذا كتبت اي رقم وظهر ان هناك رقم مشابه له في خانة اخرى فيتم شرط التنسيق؟
    1 point
  37. اسم الدخول هو اسمي الحقيقي
    1 point
  38. تم اضافة الاسم الحقيقي مع الشكر
    1 point
  39. السلام عليكم ورحمة الله تم عمل المطلوب في الملف المرفق... بن علية حاجي INDEX - MATCH.xlsx
    1 point
  40. اخي العزيز هذا ما كنت اصبو اليه مع شكري الجزيل
    1 point
  41. اتفضل الملف لعله يفى بالغرض نسخة من طباعة شهادات.xlsm
    1 point
  42. اخي العزيز مع تقديري ليس هذا ما اروم التوصل اليه ما ابغيه هو زرين احدهما يفعل الكود الذي يتضمنه الملف والثاني يلغي التفعيل مع الشكر
    1 point
  43. السلام عليكم هذا اقتراح جرب المرفق مثال1.xlsm
    1 point
  44. بعد البحث عن الخلل وبعد تعب ومشقة للوصول للخطأ في الكود تبين أن الكود يعمل بشكل سليم والخطأ لديك في العمود BB وتم تصويبها تفضل المطلوب الدور الثانى 2019 علمى.xlsm
    1 point
  45. الشرح الكامل التفصيلي المصور لمعرفة نسخة الأكسيس وتخفيض الأمان برمجيا اخواني الكرام السلام عليكم ورحمة الله وبركاته سنقوم بشرح آلية عمل برنامج تخفيض مستوى الأمان في جميع نسخ برنامج الأكسيس برمجيا وبدون اي ملفات اضافية وسيكون ذلك عن طريق الأكواد فقط . نبذه عن نسخ برنامج الأكسيس كلنا يعلم ان اي نسخة من برنامج الأكسيس لها رقم خاص يميزها عن غيرها من النسخ فمثلا : نسخة الأكسيس 97 نجد انها تأخذ الرقم 8.0 نسخة الأكسيس 2000 نجد انها تأخذ الرقم 9.0 نسخة الأكسيس 2002 وهي نسخة الـ XP نجد انها تأخذ الرقم 10.0 نسخة الأكسيس 2003 نجد انها تأخذ الرقم 11.0 نسخة الأكسيس 2007 نجد انها تأخذ الرقم 12.0 كيف تتعرف على نسخ الأكسيس الموجوده لديك كل ما عليك هو اتباع هذه الطريقة : 1. من الويندوز اضغط على ابدأ 2. اختر تشغيل واكتب فيه RegEdit اتبع المسار التالي حتى تصل الى المجلد Office HKEY_CURRENT_USER\Software\Microsoft\Office وستجد جميع ارقام نسخ الأكسيس المثبته على جهازك بعد ان عرفنا ارقام نسخ الأكسيس والمسار الخاص بها نريد ان يقوم الكود برمجيا بمعرفة النسخة التي تم فتحها . لهذا سوف نستخدم هذه الوظيفة سواء في وحدة نمطية جديده او توضع مباشرة في الـ VBA ( محرر الفيجول بيسك للتطبيقات ) للنموذج ومن ثم استدعاؤها . كود معرفة نسخة الأكسيس المستخدمة حاليا Function GetVersion() As String GetVersion = SysCmd(acSysCmdAccessVer) End Function تخفيض أمان برنامج الأكسيس الغرض كلنا يقوم بتصميم برامج سواء كانت خاصة او لأغراض ربحيه ولكن احيانا يواجه المستخدمين الذين ليس لهم دراية او معرفة مسبقه بطريقة تخفيض امان الأكسيس ولهذا تظهر لهم بين الحين والآخر الرسائل المزعجة الخاصة بتحذيرات امان الأكسيس لهذا سنقوم بكتابة وظيفة مهمتها تخفيض أمان برنامج الأكسيس الذي يعمل وقت فتح البرنامج وتتم هذه العملية لمرة واحده فقط ومن بعدها سوف يستمر برنامج الأكسيس منخفضا امانه مهما فتحت من قواعد بيانات . الطريقة العادية لتخفيض أمان برنامج الأكسيس لتخفيض أمان برنامج الأكسيس من النسخة 97 وحتى النسخة 2003 فهو بإتباع هذه الطريقة : 1. الذهاب الى اشرطة قوائم الأكسيس 2. ثم اختيار ادوات 3. ثم اختيار ماكرو 4. ثم اختيار الأمان ومن ثم وضع الإشارة على الإختيار الأخير وهو " منخفض " ثم موافق اما في برنامج الأكسيس 2007 فيتم خفض الأمان يدويا بهذه الطريقة 1. الذهاب للقائمة الرئيسية واختيار خيارات الأكسيس . 2. من الخيارات اختر مركز التوثيق ثم اختر اعدادات مركز التوثيق . 3. اختر اعدادات الماكرو ثم ضع الأختيار على اخر اختيار وهو " تمكين كافة وحدات الماكرو " ولكن ليس من المعقول ان نقوم بهذه الخطوات في كل مره او ان نقوم بإبلاغ المستخدمين لهذه الخطوات عندما تظهر لديهم تحذير الأمان لهذا نريد ان يتم ذلك برمجيا بدون تدخل المستخدم . لهذا يجب ان نحصل اولا على المفاتيح الخاصة بهذه العملية من خلال الريجستري الخاص بالويندوز . في الخطوة السابقة لتخفيض أمان الأكسيس يدويا قمنا بوضعه على منخفض لهذا دعونا نرى كيف تم عمل ذلك في الريجستري . لو قمنا بفتح الريجستري وتتبع المسار التالي الخاص بالأكسيس فسنجده بهذه الطريقة : جميع النسخ من 97 وحتى 2003 تأخذ هذا المسار مع اختلاف الرقم في نسخة الأكسيس وهي هنا رقم 11.0 وتعني نسخة اكسيس 2003 للمستخدم هو: [HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Access\Security] وللنظام هو : [HKEY_LOCAL_MACHINE\Software\Microsoft\Office\11.0\Access\Security] وسنجد ان المفتاح الفرعي لها جميعا بعد تخفيض الأمان يدويا هو "Level"=dword:00000001 اما في الأكسيس 2007 فالوضع مختلف قليلا [HKEY_LOCAL_MACHINE\Software\Microsoft\Office\12.0\Access\Security] حيث يكون المفتاح الفرعي له كالتالي فقط "VBAWarnings"=dword:00000001 وظيفة SaveRegLong حفظ قيمة في الريجستري عبر مفتاح فرعي من نوع Dword Option Compare Database Option Explicit Enum RegHive HKEY_CLASSES_ROOT = &H80000000 HK_CR = &H80000000 HKEY_CURRENT_USER = &H80000001 HK_CU = &H80000001 HKEY_LOCAL_MACHINE = &H80000002 HK_LM = &H80000002 HKEY_USERS = &H80000003 HK_US = &H80000003 HKEY_CURRENT_CONFIG = &H80000005 HK_CC = &H80000005 HKEY_DYN_DATA = &H80000006 HK_DD = &H80000006 End Enum Enum RegType REG_SZ = 1 REG_BINARY = 3 REG_DWORD = 4 End Enum Public Const ERROR_SUCCESS = 0& Public Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As Long Public Declare Function RegCreateKey Lib "advapi32.dll" Alias "RegCreateKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long Public Declare Function RegDeleteKey Lib "advapi32.dll" Alias "RegDeleteKeyA" (ByVal hKey As Long, ByVal lpSubKey As String) As Long Public Declare Function RegDeleteValue Lib "advapi32.dll" Alias "RegDeleteValueA" (ByVal hKey As Long, ByVal lpValueName As String) As Long Public Declare Function RegOpenKey Lib "advapi32.dll" Alias "RegOpenKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long Public Declare Function RegQueryValueEx Lib "advapi32.dll" Alias "RegQueryValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal lpReserved As Long, lpType As Long, lpData As Any, lpcbData As Long) As Long Public Declare Function RegSetValueEx Lib "advapi32.dll" Alias "RegSetValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal Reserved As Long, ByVal dwType As Long, lpData As Any, ByVal cbData As Long) As Long Public Declare Function RegEnumKey Lib "advapi32.dll" Alias "RegEnumKeyA" (ByVal hKey As Long, ByVal dwIndex As Long, ByVal lpName As String, ByVal cbName As Long) As Long Public Function CreateRegKey(hKey As RegHive, strPath As String) Dim hCurKey As Long Dim lRegResult As Long lRegResult = RegCreateKey(hKey, strPath, hCurKey) If lRegResult <> ERROR_SUCCESS Then 'there is a problem End If lRegResult = RegCloseKey(hCurKey) End Function Public Function SaveRegLong(ByVal hKey As RegHive, ByVal strPath As String, ByVal strValue As String, ByVal lData As Long) Dim hCurKey As Long Dim lRegResult As Long lRegResult = RegCreateKey(hKey, strPath, hCurKey) lRegResult = RegSetValueEx(hCurKey, strValue, 0&, REG_DWORD, lData, 4) If lRegResult <> ERROR_SUCCESS Then End If lRegResult = RegCloseKey(hCurKey) End Function سنقوم الآن بإستدعاء هذه الوظيفة من خلال الكود الموجود في حدث عند عداد الوقت لنموذج الشاشة الإفتتاحية للبرنامج وسيكون لجميع نسخ الأكسيس بهذه الطريقة Private Sub Form_Timer() Dim Version As String Dim strVer As String Dim strValueM As String Dim strValueU As String Version = GetVersion() If Version = "8.0" Then strValueM = SaveRegLong(HKEY_LOCAL_MACHINE, "Software\Microsoft\Office\8.0\Access\Security", "Level", 1) strValueU = SaveRegLong(HKEY_CURRENT_USER, "Software\Microsoft\Office\8.0\Access\Security", "Level", 1) ElseIf Version = "9.0" Then strValueM = SaveRegLong(HKEY_LOCAL_MACHINE, "Software\Microsoft\Office\9.0\Access\Security", "Level", 1) strValueU = SaveRegLong(HKEY_CURRENT_USER, "Software\Microsoft\Office\9.0\Access\Security", "Level", 1) ElseIf Version = "10.0" Then strValueM = SaveRegLong(HKEY_LOCAL_MACHINE, "Software\Microsoft\Office\10.0\Access\Security", "Level", 1) strValueU = SaveRegLong(HKEY_CURRENT_USER, "Software\Microsoft\Office\10.0\Access\Security", "Level", 1) ElseIf Version = "11.0" Then strValueM = SaveRegLong(HKEY_LOCAL_MACHINE, "Software\Microsoft\Office\11.0\Access\Security", "Level", 1) strValueU = SaveRegLong(HKEY_CURRENT_USER, "Software\Microsoft\Office\11.0\Access\Security", "Level", 1) ElseIf Version = "12.0" Then strValueU = SaveRegLong(HKEY_CURRENT_USER, "Software\Microsoft\Office\12.0\Access\Security", "VBAWarnings", 1) End If DoCmd.Close DoCmd.OpenForm "form" End Sub حيث ان الوظيفة الإساسية SaveRegLong تأخذ هذه القيم SaveRegLong(hKey,strPath,strValue,lData) حيث hKey يمثل نوع المفتاح الرئيسي وهو اما HKEY_LOCAL_MACHINE او HKEY_CURRENT_USER strPath يمثل المسار كاملا للمفتاح الفرعي Software\Microsoft\Office\11.0\Access\Security strValue اسم المفتاح وهو في الأكسيس من 97 الى 2003 يكون Level اما في الأكسيس 2007 فيكون VBAWarnings lData هي القيمة المطلوب كتابتها لهذا المفتاح وهي في جميع النسخ الرقم 1 نهاية الشرح بعد تنفيذ هذه الخطوات ووضعها في اي قاعدة بيانات نرغب في تخفيض الأمان لبرنامج الأكسيس سنجد ان الكود سيقوم بهذه الخطوات في الخفاء بدون ان يشعر المستخدم وبدون اي تدخل منه. بإمكانك تجربة وضع أمان الأكسيس يدويا على عالي او متوسط ثم تشغيل البرنامج وستجد ان البرنامج بعد هذه الخطوات سيقوم بتخفيض الأمان الى اقل ما يمكن ولجميع نسخ الأكسيس بدون استثناء عندما يتم فتح البرنامج حسب النسخة المطلوبه فقد يفتح شخص ما البرنامج بواسطة اكسيس 2007 وآخر بواسطة أكسيس 2003 وهكذا سنجد ان البرنامج سيتعرف اولا على رقم نسخة الأكسيس ومن ثم يقوم يقوم بتخفيض الأمان لها مباشرة خلال اقل من جزء من الثانية . وهذا هو البرنامج كاملا ( والكمال لله وحده ) . zaAllAccesVersionAndSecurityLowLevel_Pro.rar ختاما لكم مني خالص الشكر والتقدير
    1 point
  46. استاذى محمود الشريف ادام الله عليك نعمه العلم والعطاء وفقك الله الى ما فيه الخير للعباد فكره رائعة وفى انتظار المزيد وتقبل احترامى وتحياتى
    1 point
  47. اخى فى الله واستاذى محمود الشريف اسال الله ان يتقبل هذا العمل ويديم عليك العلم والعطاء وافادة الاخرين
    1 point
  48. اليكم فى المرفق كود يتكون منسطر واحد خاص بالترقيم التلقائى ( منقول ) New__________Microsoft_Excel.rar
    1 point
×
×
  • اضف...

Important Information