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

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

  1. Foksh

    Foksh

    الخبراء


    • نقاط

      7

    • Posts

      2,354


  2. محمود حموده

    محمود حموده

    عضو جديد 01


    • نقاط

      5

    • Posts

      9


  3. jjafferr

    jjafferr

    أوفيسنا


    • نقاط

      4

    • Posts

      9,871


  4. ابو البشر

    ابو البشر

    الخبراء


    • نقاط

      3

    • Posts

      686


Popular Content

Showing content with the highest reputation on 08 نوف, 2024 in all areas

  1. السلام عليكم ورحمه الله وبركاته دا جزاء من مشروع شغال عليه يلمس هذا الموضوع ساقوم بإرفاق ملف الوظائف التي يقوم بها 1- تعطيل / تفعيل مفتاح الشفت 2-ربط ديناميكي / ربط يدوي لــ الواجهات الاماميه (النماذج) مع الواجهات الخلفيه (الجداول) 3-اخفاء جميع كائنات الاكسس الواجهات الاماميه (النماذج) مع عدم القدره ع استيرادها من ملف اكسس اخر 4-اخفاء جميع كائنات الاكسس من الواجهات الخلفيه (الجداول) مع عدم القدره ع استيرادها من ملف اكسس اخر يرجي الافاده بعد التجربه خاص اوفسينا.rar
    3 points
  2. السلام عليكم حيث ان الأخ محمد من الأصدقاء القدامى .. وقد راسلني .. فهذه المشاركة قد تكون هي الأولى لي في منتدى جيراننا الأكارم مشاركة مع اخي ابي مروان وبعد اذنه يلزم تحديث الخلايا لديك لإزالة حرف الهاء قبل تشغيل الدالة يمكنك نقل الدالة لمحرر الورقة التي تريد تطبيق الكود عليها Sub Utest() Dim urg As Range Set urg = Range("J2:L10") 'غير حسب النطاق لديك Dim UCell As Range For Each UCell In urg UCell.NumberFormat = "@" If UCell.Value = "" Then UCell.Value = "" UCell.Value = Format(UCell.Value, "YYYY/MM/DD") Next End Sub
    3 points
  3. باارك الله فيكم ونفع بكم هههههه انا ما لعبت شطرنج من زمان اكيد هتكسب شرح توضيحي لـــ اليه العمل
    2 points
  4. وعليكم السلام ورحمة الله وبركاته.. ما يجب التحقق منه عدة نقاط ، أذكر منها :- 1. تحقق من لغة الـ Unicode في الويندوز . 2. تنسيقات الوقت والتاريخ في الويندوز . 3. نسخة الأوفيس وإصدارها . 4. بعد النقطة 3 اذا كان الملف مفتوح المصدر قم بضغط وإصلاح القاعدة على نفس الجهاز . 5. الأصل و قبل هذا كله ، التأكد من سلامة قاعدة البيانات والتنسيقات لهذه العناصر ( مربعات النص ) ومصادر بياناتها في الجداول . 💡 هذا من وجهة نظري والله أعلم.
    2 points
  5. السلام عليكم ورحمة الله وبركاته الأخوة الكرام بارك الله فيكم تجدون بالملف المرفق قاعدة بيانات بها - [ awsReg ] وهو Class Module للتحكم بالريجيستري [ Windows Registry ] - [ awsReg_Test_Module ] وهو مديول به نماذج لتوضيح كيفية للإستخدام حاولت قدر المستطاع تغطية جميع الإستخدامات - [ باقي المديولز ] هي ضرورية للعمل نبذة مختصرة - مصدر الكود من هنا : https://learn.microsoft.com/en-us/previous-versions/office/developer/office2000/aa155731(v=office.10)?redirectedfrom=MSDN&ref=nolongerset.com - من قام بتعديل التعريفات لتناسب 64x من هنا : https://nolongerset.com/regop-class-for-64-bit-vba/ - قمت بفضل الله ونعمتة ( الحمد كله لله أوله وأخره) 1- دمج وتجهيز الكود بالكامل 😁 2- تعديل نظام عرض الرسائل والأخصاء بالكامل يدعم اللغة ( العربية - الإنجليزية ) 3- تعديل وظيفة allValue لتعود بي 3D Array القيمة والبيانات ونوعها 4- تعديل وظيفة value لتعود بي 2D array البيانات ونوعها 5- إضافة وظيفة allKeysDict - [Get Property] لتعود بالمفاتيح الفرعية داخل قاموس 6- إضافة وظيفة allValuesDict - [Get Property] لتعود بالقيم الموجودة في مفتاح داخل قاموس 7- إضافة وظيفة IsKeyExists لتعود بنعم إذا كان المفتاح موجود (تم إضافة الـ Api الخاص بها) 8- إضافة وظيفة IsValueExists لتعود بنعم إذا كانت القيمة موجودة 9- التعديل علي بعض الأكواد وإضافة وظائف أخري (قد نأتي لذكرها لاحقاً "إن شاء الله" شرح لمثال واحد [ كتابة قيم داخل الريجيستري ] باقي الأمثلة موجودة بالملف Public Sub Test_awsReg_WriteValues() Dim winReg As awsReg Dim sPath As String Dim sValue As String Dim vResult As Variant On Error GoTo ErrorHandler sPath = "Software\awsApp" ' awsApp Doesn't Exist Yet Set winReg = New awsReg With winReg .useDebug = debugState .useMsgLog = msgLogState .MsgLanguage = englishMsg .Root = HKEY_CURRENT_USER .key = sPath ' REG_SZ Writing a string value .value("MyString") = "Hello, World!" .value("Date") = Format(Now, "yyyy-mm-dd hh:nn:ss") .value("awsPath") = "%USERPROFILE%\Documents" ' REG_DWORD Writing a numeric value [0 For False] [1 For True] .value("isValid") = CInt(1) .value("myNumber") = 2341 .Options = StoreNumbersAsStrings 'this to store numbers as String .value("strNumer") = 5246 ' REG_MULTI_SZ Writing an array (multi-string value) Dim myArray(2) As String myArray(0) = "Value1" myArray(1) = "Value2" myArray(2) = "Value3" .value("MyArray") = myArray Debug.Print "Values written successfully" End With ExitAndClean: If Not winReg Is Nothing Then Set winReg = Nothing Exit Sub ErrorHandler: MsgLog "We Received an unknown Error" & vbCrLf & _ "Error Number : " & Err.Number & vbCrLf & _ "Description : " & Err.description _ , llCritical, debugState, msgLogState, "Unknown Error" Resume ExitAndClean End Sub النتيجة : الأخوة الكرام الكود متاح للجميع نسعد بتعديلاتكم ومشاركتكم وإستفساركم بالتوفيق winRegApi_V1_FN.zip
    1 point
  6. السلام عليكم 🙂 رجاء الرجوع الى النسخة الاولى من هذا الموضوع لفهم تفاصيل الكود . عرضت عليكم جميع التفاصيل في عمل حدث الـ Data Macro ، فكان على المبرمج ان يكتب جميع خطوات الكود لكل حقل ولكل حدث ، يدويا !! وهنا اعطيكم طريقة طريقة عمله برمجيا (يعني المبرمج ما عنده عذر من الان ان لا يستخدم هذه الاداة في برامجه 🙂 ). هذه واجهة وكائنات البرنامج: . 9. نقوم بالنقر على الزر رقم 9 مرة واحدة فقط ، فيقوم بنسخ الجدول جدول tbl_x_AuditTrail فارغ ، والوحدة النمطية mod_UserName_PcName ، الى قاعدة البيانات التي تم اختيارها في رقم 3 ، 1. جدول tbl_x_AuditTrail فارغ ، وسيتم عمل نسخة منه ومن الوحدة النمطية mod_UserName_PcName عند النقر على الزر رقم 9 ، الى قاعدة البيانات التي تم اختيارها في رقم 3 ، 2. يجب اختيار قاعدة البيانات التي تريد عمل احداث الجداول عن طريق الـ Data Macro فيها ، وسيتم ظهور اسم قاعدة البيانات في الرقم 3 ، وفي نفس الوقت سيتم ظهور اسماء جداولها في الرقم 4 ، 4. اختار الجدول الذي تريد عمل الاحداث عليه ، ومنها ستظهر اسماء حقوله في الرقم 5 ، 5. تختار اسماء الحقول التي تريد ان تتابع متغيراتها (وهو اساس هذا البرنامج) ، وتستطيع اختيار جميع الحقول لهذا الحدث بالنقر على الزر 6 : 5.1 لتسجيل وحفظ متغير الحقل عند اضافة سجل جديد (الحاق سجل جديد) ، 5.2 لتسجيل وحفظ متغير الحقل عند عمل تغيير على قيمة الحقل (بعد تحديث الحقل) ، 5.3 لتسجيل وحفظ متغير الحقل عند حذف السجل ، 7. يجب اختيار حقل المفتاح الاساسي في الجدول ، 8. عند الانتهاء من الاختيارات ، ننقر على الزر رقم 8 ، فيقوم بعمل الـ Data Macro لجميع الحقول في الجدول الذي تم اختياره ، وستاتيك رسالة تؤكد انتهاء العمل. وللعمل على حقول جدول آخر ، ابدأ من الرقم 4 اعلاه مرة اخرى. هنا سأعطي مثال عن طريقة العمل ، والنتائج: هذه قاعدة البيانات التي ساعمل عليها ، ونرى انه لا يوجد بها الجدول tbl_x_AuditTrail فارغ ، ولا الوحدة النمطية mod_UserName_PcName ، ولا توجد اي احداث في المربع الاحمر : . خطوات العمل: . والنتيجة في قاعدة البيانات الاخرى: . والان لنرى عندما نعمل اي تغيير في المتغيرات: . هنا نرى ان الاحداث الثلاثة موجودة في هذا الجدول ، وطبعا في الجدول الآخر كذلك : . وهنا نقارن النتائج . جعفر Make_AuditTrail_XML_02.zip
    1 point
  7. مساءك فل .... ممكن الشكل المتوقع تصديرة .... هل تريد كل سائق وامامه بياناته ومع الاصول التي تخصه ... يعني مثلا سائق لديه ثلاث سيارات اصول ... هل تريدها في ثلاث سجلات ... ام سجلات مدمجة ؟؟؟؟
    1 point
  8. لاحظ الفرق بين الادخال الصحيح وادخالك انت !!!!
    1 point
  9. جزاك الله خيرا و بارك الله فيك أخي الكريم هذا هو المطلوب بالضبط ألف ألف شكر وامتنان
    1 point
  10. هل هذا ما تريد ..... تغيير رقم الاسبوع ليبدا من 1.accdb
    1 point
  11. وعليكم السلام ورحمة الله وبركاته أخي @سامر محمود .. إضافةً لما تقدم به أستاذنا ومعلمنا ووالدنا الحبيب @ابوخليل ، اعتقد ان بنية الجداول لديك قد تكون الى حد ما غير سليمة أو غير مكتملة ,, وعليه فإن لي اقتراح بتنفيذ فكرة معلمي الحبيب بأن يكون لديك جدول واحد فقط للحركات ويضم عمليات البيع والشراء وحركة الأصناف ... إلخ كاملة في هذا الجدول . وللسير في تنفيذ ذلك قمت بالتعديل التالي ( رغم انني غير مقتنع بأن تكون أسماء الحقول باللغة العربية ) قمت بإنشاء جدول "الحركات" ويضم جميع الحركات السابق ذكرها ، مع ربط العلاقات بالشكل الذي رأيت أنه منطقي . الق نظرة على هذا التعديلات في المرفق التالي :- Transfer.accdb
    1 point
  12. الاداة مفتوحة المصدر 😎 يمكنك التعديل وتقديم الحلول والاقتراحات ==================================================( تحديث ) 1- كتابة المبالغ من الملاين الى الديشليار+ الافلاس كأدخال مبلغ كتفيقيط المبلغ 2- تصحيح اذا كان بداية المبلغ صفر 3- اضافة بعض التحسينات وخيار تنسيق المبالغ واختيار الدولة ملاحظة دالة استاذي @ابو جودي للتفقيط يوجد نقص بالمسميات الملايين ؟! ويوجد داله -ثانية تحميل نسخة من المرفق Writing millions to deshlyar with excil_editor ms access.rar
    1 point
  13. ظننت الأمر قد لا يحتاج إلى شرح . على العموم الفكرة بسيطة جداً وهي أن نتجه لأن يكون عدد التنبيهات في مربع نص ، ونستخدم التنسيق الشرطي كما في المثال المرفق التالي بحيث يصبح لون خلفية مربع النص أحمر إذا كان هناك عدد تنبيهات ، وأخضر إذا لم يكن هناك تنبيهات . base_TN.accdb
    1 point
  14. وعليكم السلام ورحمة الله وبركاته .. الأمر ان شاء الله يسير أخي الكريم @moho58 . بدايةً لتطبيق فكرتك يجب أن نضع شرط إضافي في استعلام مصدر سجلات النموذج frm_agenda_suive في الحقل oui_non = False ليتم إظهار السجلات الغير منجزة فقط . ثانياً بما انك تريد عرض عدد السجلات في اللليبل تسمية154 في النموذج wajiha ، هنا لا بد من جعل الاستدعاء لجلب العدد في حدث عند التحميل بحيث يصبح بالشكل التالي :- Private Sub Form_Load() Me.تسمية154.Caption = DCount("*", "tab_agenda_suive", "oui_non = False") End Sub وإذا عزمت على تحويله الى مربع نص غير منضم ، فاجعل قيمة مصدر بياناته بهذا الشكل :- =DCount("*", "tab_agenda_suive", "oui_non = False") بعد تعديل المشاركة هذه ( سهوت عن إضافة فكرة عدد الأيام المتبقية للإنجاز ) قمت أولاً بإنشاء استعلام جديد ، وأضفت فيه حقول الجدول كما في السابق ولكن مع إضافة حقل جديد ، وأضفته كمصدر سجلات النموذج بدلاً من استخدام الجدول كمصدر سجلات بشكل مباشر :- عدد الأيام المتبقية: DateDiff("d",Date(),tab_agenda_suive.date_fait) لحساب عدد الأيام المتبقية من تاريخ اليوم حتى تاريخ الإنجاز المتوقع . ثالثاً وأخيراً في زر الجرس اجعل الحدث عند النقر لفتح النموذج frm_agenda_suive مثالك بعد التعديل : base_TN.accdb
    1 point
  15. أخي الكريم @Foksh الأخوة الكرام صبحكم الله بالخير 1- إلغاء وتفعيل الحماية الخاصة بـ application.FollowHyperlink 2- إضافة مسار البرنامج لـالــ Access\Security\Trusted Locations 3- يعتبر الرجستري وسيط بين الوجهات المتعددة مثال 1 : أعمل بكود لضبط وتحجيم أبعاد الاكسيس والتعامل مع أكثر من شاشة بحيث يسمح للمستخدم بعرض البرنامج علي الشاشة 1 او 2 إن كان متصل بالجهاز أكثر من شاشة وإن كانت الابعاد مختلفة تختلف أبعاد البرنامج وهو يعتمد علي الجداول بشكل أساسي وإن كان هناك أكثر من واجهة تحتاج إلي تطبيق الامر علي كل واجهة ولكن الريجيستري يعتبر وسيط يسمح لك بتمرير القيم وإستدعائها وتعين قيم افتراضية مثال 2 : يمكن إستخدامة في حماية البرنامج الخاص بك فإضافة قيم في الريجيستري تسمح لك بالتحقق من - متي أول مرة تم إستخدام البرنامج (للمدة التجريبة) - إضافة مفاتيح خاصة بكل جهاز - الأفكار كثيرة أظن كدا فكرة الوساطة واضحة وأتمني أسمع أفكاركم 🧠 4- إستدعاء بعض المعلومات التي تحتاج إليها مثل - معرفة مسار النظام الافتراضي [ HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion ] - معرفة جميع الطابعات الموجودة [ HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Printers ] - معرفة الطابعة الإفتراضية [ HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows ] ثم [ Device ] 5 - تغير الإعدادات - تغير الطابعة الإفتراضية - عدم السماح للوندوز بتجاوز إختيار - فيما أذكر يمكن التحكم بالطابعة الإفتراضية من خلال الريجيستري كعمل بروفايل خاص بإعدادات خاصة أرجو لكم التوفيق والسداد والتعامل مع الريجيستري بحذر ويفضل دائماً أخذ نسخة احتياطية للأمان
    1 point
  16. وعليكم السلام ورحمة الله تعالى وبركاته طلبك غير واضح أخي الكريم
    1 point
  17. اكرر شكري لك أبو مروان على سرعة الاستجابة ما شاء الله تبارك الرحمن جداً الكود ممتاز للتنويه عندي ثلاثة اعمده فيهم تواريخ وليس عمود واحد هل في طريقة تطبق بهذا الكود ويعمل على الثلاثة الاعمدة
    1 point
  18. هذا هو المطلوب استاذنا المبدع محمد هشام. هذا هو المطلوب جزاك الله خيرا والشكر موصول لاستاذ أبومروان
    1 point
  19. وعليكم السلام ورحمة الله تعالى وبركاته بما أنك تستخدم الأكواد على الملف أعتقد أنه بإمكانك ربط الكود بأي شكل وتقوم بوضعه فوق الصورة عادي نفس الفكرة المقترحة من الأخ @أبومروان بواسطة الأكواد مع إمكانية تحديد إسم الصورة والتعليق المرغوب إظهاره .يمكنك إظافة أي عدد من الأشكال وتعديل النطاقات بما يتناسب مع إحتياجاتك wor-v2.xlsm
    1 point
  20. اولاً اشكرك ابو مروان على ردك ثانياً انا محتاج خانة وحده فقط ادخل فيها التاريخ ويكون 1446/05/01 بدون وضع (هـ) بالاخير انت شرحت خلية فارغة، أدخل التاريخ بالتنسيق 1446/05/01. في خلية أخرى، استخدم الصيغة التالية =TEXT(A1, "yyyy/mm/dd") & "هـ" هل من الممكن تكون خليه وحده ادخال فيها التاريخ 1446/05/01
    1 point
  21. السلام عليكم ورحمه الله وبركاته يمكنك استخدام صيغة. إليك كيفية القيام بذلك: في خلية فارغة، أدخل التاريخ بالتنسيق 1446/05/01. في خلية أخرى، استخدم الصيغة التالية =TEXT(A1, "yyyy/mm/dd") & "هـ" حيث A1 هي الخلية التي تحتوي على التاريخ. اضغط على Enter. ستظهر النتيجة بالتنسيق 1446/05/01هـ. إذا كنت تفضل، يمكنك أيضًا إدخال التاريخ مباشرة مع "هـ" كما يلي: اكتب في الخلية: 1446/05/01هـ. لكن تذكر أن ذلك سيعطي Excel نصًا وليس تاريخًا، لذلك ستفقد بعض وظائف التاريخ. استخدام الصيغة هو الخيار الأفضل إذا كنت تحتاج إلى التعامل مع التواريخ بشكل أكبر
    1 point
  22. الاداة مفتوحة المصدر 😎 يمكنك التعديل وتقديم الحلول والاقتراحات ================================================== تحديث على الصوااريخ 😂 1- ربط ملف الاكسس لكل تعديل تحديث تلقائي وليس تحرير كتابة وقراءة فقط 2- جمع Sum (A:A) جمع المليارات من نص اكسس الى ملف اكسل ورجوع للنص اكسس (( بالملايين )) 3- تنقل وعرض الملفات تحميل بالمرفق : Number_Miluon_Sum_With_Link_Excel_On_MsAccess.rar
    1 point
  23. السلام عليكم اخوي ابوخليل 🙂 . هنا افرز خلاصة تجاربي مع مؤسسات متشعبة الاعمال 🙂 والحمدلله انه اوجد لنا هذا السماء الفسيح لنشر المعرفة ، فشكرا لك دكتور @محمد طاهر عرفه 🙂 جعفر
    1 point
  24. هاي من طيب اصلك ، بس عطني اللوكيشن وبطرش لك الشباب بالبخور
    1 point
×
×
  • اضف...

Important Information