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

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

  1. د.كاف يار

    د.كاف يار

    الخبراء


    • نقاط

      13

    • Posts

      1681


  2. Moosak

    Moosak

    أوفيسنا


    • نقاط

      8

    • Posts

      2206


  3. Ali Mohamed Ali

    Ali Mohamed Ali

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


    • نقاط

      8

    • Posts

      11641


  4. ابراهيم الحداد

    • نقاط

      5

    • Posts

      1256


Popular Content

Showing content with the highest reputation on 04/20/22 in all areas

  1. بسم الله الرحمن الرحيم السلام عليكم ورحمة الله وبركاته يسرني اليوم أن أقدم لكم هذه الهدية الرمضانية المتميزة والرائعة 😊 ( الكاتب الذكي لدوال المجال في أكسس ) Dloockup, DCount, DMax, DMin, Dfirst, DLast , DSum, DAvg هذه الأسطورة هي عبارة عن أداة صممتها في أكسس ( بفضل الله وحمده ) تقوم بكتابة دوال المجال نيابة عنك بشكل آلي .. وتعطيك النتيجة بشكل مباشر 😉👌🏼 لن يخطيء أحد بعد اليوم في كتابة جملة هذه الدوال إن شاء الله 😁 كل ما عليك فعله هو استيراد هذه الأداة لبرنامجك ثم اختيار الجدول أو الاستعلام المطلوب والحقل المراد وبعدها سترى العجب العجاب 🙂 ✨ ومن مزاياها :✨ 1 - تسهل عليك كتابة أسماء الجداول والحقول ( فقط تختارها من القائمة المنسدلة ) . 2- يحل مشكلة تداخل النصوص عند استخدامها مع الجداول والحقول المكتوبة باللغة العربية . 3- تفحص لك النتيجة مباشرة للتأكد من أنك ستحصل على البيانات التي تريدها . 4 - سهلة الاستخدام فقط اتبع الخطوات الموضحة وتأكد من اختيار نوع البيانات الصحيح . 5 - يمكنك عمل دالة بأربعة 4 معايير بكل سهولة ويسر . 6 - يمكنك عمل تعديلاتك الخاصة على الدالة مباشرة وفحص النتيجة مباشرة بعد التعديل على النتيجة النهائية . 7 - إمكانية الحصول على الصيغة الخاصة بمحرر الأكواد VBA أو الصيغة المستخدمة في الاستعلامات ومنشيء التعبير . 8- إمكانية استخدام الأداة بشكل مستقل من غير الحاجة لنقلها إلى برنامجك . 9- وغيرها الكثير مما سيفتح الله عليكم اكتشافه بأنفسكم إن شاء الله 😅 طريقة الاستخدام : سهلة يسيرة بحمد الله .. فقط قم بسحب النموذج المسمى SmartDomainFunctionsBuilder_F إلى برنامجك عن طريق السحب والإفلات .. ثم قم بفتح النموذج عندك وسوف يقوم هو آليا بالتعرف على الجداول والاستعلامات الخاصة ببرنامجك بدون الحاجة إلى جهد يذكر 🙂 ( مع إمكانية استخدام الأداة بشكل مستقل من غير الحاجة لنقلها لبرنامجك ولكنك ستفقد الكثير من المميزات 😉 ) الأداة تم عمل الكثير من التجارب عليها وتم تلافي العديد من الأخطاء وإصلاحها بحمد الله وفضله... ولكن لا زلت لا أستغني عن آراءكم وملاحظاتكم من خلال استخدامكم لها 😉 الشرح بالتفصيل : 🙂 وهنا قمت بشرح الأداة بشكل مفصل نوعا ما في مقطع فيديو مدته نصف ساعة تقريبا : وأخيرا التحميل 😊 تحميل الملف الأصلي : >> حمل من هنا آخر إصدار للأداة << تحميل الملف بلمسات المهندس العزيز @د.كاف يار : د.كاف يار __Domain Functions Builder V1.0.accdb وأهم من الأداة نفسها 😉 لا تنسوني من صالح دعائكم لي ولوالدي .. ولا تحرموني من آرائكم ومقترحاتكم ونصحكم وإرشادكم 🙂 أخوكم ومحبكم موسى الكلباني 😊 ‏‏Domain Functions Builder V1.0.accdb
    6 points
  2. عمل اكثر من رائع و احترافي تفضل هذا التعديل البسيط لراحة المتسخدم اسهل من ناحية اختيار نوع البيانات __Domain Functions Builder V1.0.accdb
    4 points
  3. وعليكم السلام-تفضل تم تنظيم الملف ... كل ما عليك اختيار كود الموظف من القائمة الموجودة بالخلية I1 وسيب الباقى على الإكسيل أما ملف Horizontal لجلب كل الموظفين بأسماء أصنافهم وأعدادها أفقياً بدون تكرار ex1.xlsx Horizontal.xlsm
    4 points
  4. تفضل هذا التعديل مع بعض التعديلات على المكتبة و الاكواد حتى يكون اكثر تفاعلاً عند الاختيار و التنقل __Domain Functions Builder V1.0.accdb تم تغيير المكتبة يرجى تجربة اخر تعديل
    3 points
  5. شكرا اخي موسى على هذا المصنع ، بل هو ,, كتاب : دوال المجال للعمل والتطبيق في الحال ,, اضافة ثمينة لمكتبة المنتدى . غفر الله لنا ولك ولوالديك ومنحك البر بهما .
    2 points
  6. تفضل ضع هذا الكود في ازرار الاخفاء Dim db As DAO.Database Dim rs As DAO.Recordset Set rs = CurrentDb.OpenRecordset("SELECT * FROM [MSysNameMap] where [Type]=1 or [Type]=5") rs.MoveFirst While (Not rs.EOF) Application.SetHiddenAttribute acTable, rs.Fields(2).Value, True rs.MoveNext Wend rs.Close: Set rs = Nothing
    2 points
  7. على الرغم انك تأخرت كثير جداً عند الرد .. ولم تحدد هذا الطلب من قبل ؟!!! ولكنى رفعت لك ما طلبت بملف جديد اضافة الى مشاركتى السابقة تحت اسم Horizontal
    2 points
  8. السلام عليكم ورحمة الله استخدم المعادلة التالية =INDEX(H7:H18;MATCH(1;(F7:F18=G2)*(H7:H18>=C2)*(H7:H18<=F2);0)) و لا تنسى الضغط على ازرار SHIFT + CTRL+ENTER لكى تعمل معك المعادلة بشكل صحيح
    2 points
  9. تفضل جرب هذا التعديل Backup.zip
    2 points
  10. السلام عليكم ورحمة الله استخدم المعادلة التالية و لا تنسى الضغط على SHIFT + CTRL+ENTER حتى تظهر نتيجة المعادلة =INDEX($H$7:$H$18;MATCH((A2&G2);$A$7:$A$18&$F$7:$F$18;0))
    2 points
  11. بسيطة وذلك من خلال هذا الكود .. سيتم تفعيله من أيقونة تصفير ,,, الموجودة بالصفحة الرئيسية Sub ResetForm_Click() Dim ws As Worksheet With Worksheets("الصندوق") .Range("C3:J40").ClearContents End With Worksheets("كشف عميل").Range("b4:c4").ClearContents With Worksheets("المبيعات") .Range("a3:g40").ClearContents End With Worksheets("كشف مورد").Range("b4:c4").ClearContents With Worksheets("المشتريات") .Range("a3:g40").ClearContents End With With Worksheets("العملاء الموردين") .Range("C2:C40").ClearContents .Range("E2:I40").ClearContents End With With Worksheets("أصناف المبيعات") .Range("a3:E200").ClearContents End With With Worksheets("اصناف المشتريات") .Range("a3:E200").ClearContents End With With Worksheets("الأصناف") .Range("B3:B40").ClearContents .Range("D3:I40").ClearContents End With With Worksheets("الموردين") .Range("A4:B200").ClearContents End With With Worksheets("شيكات") .Range("B4:B200").ClearContents End With End Sub Data_All1.xlsm
    2 points
  12. بعتذر لحضرتك عن عندم قدرتي على ان اقدم المساعده لضعف علمي وخبرتى واطلب المساعده من اساتذتى الاجلاء (حفظهم الله واطال الله بقائهم ونفع الله بهم وزادهم علما وبركه) @ابو جودي @Moosak @د.كاف يار@Eng.Qassim@ابوخليل
    1 point
  13. شاهد المرفق نموذج .xlsm ضبط الارقام نموذج .xlsm
    1 point
  14. ايه رايك تجرب الاداة هنا قد تجد لك حل لمشكلتك باستخدامها
    1 point
  15. شكرا جزيلا لكم جميعا لمرروركم وتشجيعكم 😊🌹 أستاذي العزيز الغالي @د.كاف يار تشرفت بمرورك وإضفاء لمساتك السحرية الرائعة 😊 وشهادة عظيمة منك أعتز بها 😄 فقط أتمنى منك تعديل شيء بسيط عليها لتكتمل الفرحة 😁 أولا : من الأشياء التي راعيتها عند التصميم .. تسهيل عملية استخدام ونقل الأداة إلى أي قاعدة بيانات أخرى للمستخدمين .. فلو أمكن أن تدرج الكود الذي في الموديول إلى قائمة أكواد النموذج لكي يسهل نقله ( قطعة واحدة ) بدل أن ينقل عنصرين ( النموذج والموديول ) 🙂 ثانيا : أيضا راعيت مسألة إمكانية استخدام الأداة بدون الحاجة لنقلها لبرنامجك .. وهذا يستدعي أن القوائم المنسدلة تقبل أي اسم غير المدرج ضمن القائمة .. لكن لاحظت أن (قائمة نوع البيانات) لا تعمل عند كتابة اسم حقل غير المدرجة ضمن القائمة .. ولك مني جزيل الشكر 😊 🌹
    1 point
  16. الله الله على الابداع بارك الله فيك وجعله الله فى ميزان حسنات والله مثل هذه الاداه هتفيد الكثير والكثير من المبتدئين امثالى لك جزيل الشكر على كل مساهماتك
    1 point
  17. هو انا ليه حاسس انى مش فاهم حاجه ! ^_^ (يعنى حضرتك عاوز تعمل ايه تحديدا عاوزه يكتب التاريخ ولا يعمل ايه بالظبط ^_^ ممكن توضيح اكثر
    1 point
  18. 1 point
  19. زادك الله من فضله وانعم عليك بالخير روائع احترامى
    1 point
  20. السلام عليكم بارك الله فيك أستاذ موسى الله يوفقك وتسلم ايدك على هذا العمل الاكثر من رائع اعزكم الله وبارك الله لنا فيكم وجزاكم عنا كل خير ولكم مني اجمل تحية وإحترام سأفوم بالتجربة إن شاءالله واوافيكم بالنتيجة. تحياتي لشخصكم الكريم
    1 point
  21. السلام عليكم ورحمة الله حاول تطبيق الماكرو في هذا الملف على الملف لديك حسين.xlsm
    1 point
  22. كما تعلم يقيناً .. اننا نبهنا مئات المرات على هذا الأمر .. فلا تنتظر المساعدة من أحد بدون رفع ملف مدعوم بشرح كافى عن المطلوب ,, حيث لا يمكن العمل على التخمين وتجنباً لإهدار وقت الأساتذة دون جدوى أو أهمية .!!!! وحجم الملف ان كان كبير فهذا ليس عذر يمكنك رفعه على موقع خارجى مثل Mediafire
    1 point
  23. فضلا انظر للمرفق مع العلم حضرتك طلباتك مختلفه في كل مرحله test_print (1) (1).xlsm
    1 point
  24. هو كلام معاليك صح جدا جدا جدا طبعا يا أفندم بس جرب الكود وانت تعرف الفرق اولا الوقت يعمل على نظام 24 ساعة بإضافة علامة الـ سالب ( - ) يسار الوقت عداد الوقت يعمل تنازليا وبدون اى مشاكل وبدون الاعتماد على مربع النص t1 الدال على الوقت الحالى اى يمكنك ترك t1 يعمل على نظام الـ 12 ساعة و t2 يعمل بالعد التنازلى على نظام الـ 24 ساعة وبما اننا دخلنا لمحرر الأكود برجلينا واشتغلنا منه لاننا مضطرين لذلك بوضع الكود فى حدث الوقت ليعمل العد التنازلى خلى كل شئ من داخل المحرر يعنى علشان لو مستقبلا حب يعدل شئ ما يلفلف حوالين نفسه
    1 point
  25. ضع الوظيفة الاتية فى وحدة نمطية Option Compare Database Option Explicit #If VBA7 Or Win64 Then Public Declare PtrSafe Function apiGetSystemMenu Lib "user32" Alias "GetSystemMenu" (ByVal hwnd As Long, ByVal flag As Long) As Long Public Declare PtrSafe Function apiEnableMenuItem Lib "user32" Alias "EnableMenuItem" (ByVal hMenu As Long, ByVal wIDEnableMenuItem As Long, ByVal wEnable As Long) As Long #Else Public Declare Function apiEnableMenuItem Lib "user32" Alias "EnableMenuItem" (ByVal hMenu As Long, ByVal wIDEnableMenuItem As Long, ByVal wEnable As Long) As Long Public Declare Function apiGetSystemMenu Lib "user32" Alias "GetSystemMenu" (ByVal hWnd As Long, ByVal flag As Long) As Long #End If Const MF_BYCOMMAND = &H0& Const MF_DISABLED = &H2& Const MF_ENABLED = &H0& Const MF_GRAYED = &H1& Const SC_CLOSE = &HF060& Const SWP_NOSIZE = &H1 Const SWP_NOZORDER = &H4 Const SWP_NOMOVE = &H2 Const SWP_FRAMECHANGED = &H20 Const WS_MINIMIZEBOX = &H20000 Const WS_MAXIMIZEBOX = &H10000 Const WS_SYSMENU = &H80000 Public Function EnableDisableControlBoxX(bEnable As Boolean, Optional ByVal lhWndTarget As Long = 0) As Long On Error GoTo Err_EnableDisableControlBoxX Dim lhWndMenu As Long Dim lReturnVal As Long Dim lAction As Long lhWndMenu = apiGetSystemMenu(IIf(lhWndTarget = 0, Application.hWndAccessApp, lhWndTarget), False) If lhWndMenu <> 0 Then If bEnable Then lAction = MF_BYCOMMAND Or MF_ENABLED Else lAction = MF_BYCOMMAND Or MF_DISABLED Or MF_GRAYED End If lReturnVal = apiEnableMenuItem(lhWndMenu, SC_CLOSE, lAction) End If EnableDisableControlBoxX = lReturnVal Exit_EnableDisableControlBoxX: Exit Function Err_EnableDisableControlBoxX: MsgBox "Error:" & Err.Number & vbCrLf & "Description: " & Err.Description Resume Exit_EnableDisableControlBoxX End Function ويمكنك عدم تفعيل زر الاغلاق من خلال EnableDisableControlBoxX False ويمكنك الرجوع للوضع الاصلى بإعادة فاعلية زر الاغلاق من EnableDisableControlBoxX True
    1 point
  26. وعليكم السلام ورحمه الله وبركاته كل عام وانت طيب اخى وضاح جرب الحلول المرفقه بالمواضيع التاليه لاخواننا واساتذتنا جزاهم الله عنا كل خير بالتوفيق
    1 point
  27. اعتقد باني اجبتك عن سؤالك في مشاركتك السابقة واليك النموذج جورج الطويل.accdb
    1 point
  28. السلام عليكم ورحمة الله وبركاته وبعد: أساتذتي الفضلاء أعضاء فريق الموقع الكرام - جزاكم الله خيراً - على ما قدمتم وتقدمونه من جهود مشكورة في هذا الصرح العظيم. لي مقترح أود أن أضعه بين أيديكم الكريمة لاحظت أنه بعد أن يتم تحديد أفضل إجابة من قبل بعض الإخوة الأعضاء الذين يطرحون أسئلة أو استفسارات يقومون بعد فترة بإزالة خانة تحقق أفضل إجابة ليطرحوا موضوعاً قد يتعلق بموضوع المشاركة لكنه من باب آخر لم يكن قد قدم عنه في عنوان أو صلب الموضوع الأساسي ولذلك فإنني أقترح أن يتم إغلاق أي موضوع حصل فيه الأخ السائل على أفضل إجابة وأقرّ بذلك من خلال خانة تحقق (أفضل إجابة) بإرادته. تقبلوا تحياتي العطرة. والسلام عليكم ورحمة الله وبركاته.
    1 point
  29. وعليكم السلام ورحمة الله وبركاته 💐🏵️🌸 أستاذنا الفاضل محمد طاهر جزاكم الله خيرا وأحسن إليكم ، أشكركم جزيل الشكر على ردكم الجميل ، كان هذا اقتراحي بناء على ما شاهدت من بعض السادة الأعضاء الكرام ، وكما ذكرت من حق الاخ السائل أن يفاضل بين هذه الإجابة وتلك لكن ما دفعني لتقديم هذا الاقتراح هو أن يقوم بإلغاء أفضل إجابة بعد أن استوفت وأحاطت بجوانب سؤاله ليطرح ملحقا آخر يتوقف إعطاء أفضل إجابة على هذا الملحق الذي لم يشر إليه بسؤاله الرئيسي. وانتم - أستاذنا الفاضل - أدرى بما يتوجب فعله حيث تفضلتم بقيادة دفة هذا الموقع بكل حكمة ورجاحة راي...أسأل الله تعالى أن يوفقنا وإياكم لما يحب ويرضى وأن يجعل هذا العلم النافع بميزان حسناتكم آمين.. رمضان مبارك عليكم تقبلوا تحياتي العطرة لشخصكم الكريم والسلام عليكم ورحمة الله وبركاته 💐🌺🌸
    1 point
  30. السلام عليكم الموضوع حاليا متروك للتقدير ، فمنة ناحية أخرى أحيانا تأتي اجابة نعتبرها الافضل ثم تاتي بعد فترة اجابة افضل منها ، و لا اريد غلق هذا الباب اما عن الاغلاق الالي ، فهذه الخاصية غير متاحة حاليا ، و باذن الله ساقترح الفكرة على الشركة المنتجة و نطرحها للحوار معهم لدراسة امكانية توفيرها بعد فترة محددة من ثبات افضل اجابة ، و ساتابع مدى قبول الاقتراح
    1 point
  31. السلام عليكم ورحمة الله وبركاته أخي الكريم الحل كما يلي: نضع التاريخ الأول في خلية ما ثم في الخلية التالية الرقم الذي تريد جمعه أو طرحه ثم في الخلية التالية تضع = (خلية التاريخ-1) +أو - خلية الرقم المطلوب ينتج عندك تاريخ جديد هو حاصل جمع أو طرح خلية الرقم مع أو من (خلية التاريخ الأول-1) مع مراعاة عدد الأيام في كل شهر. أما -1 لكي لا يحسب يوم البدء مرتين. والله أعلم تقبل تحياتي والسلام عليكم
    1 point
  32. تحتاج لهذه المعادله =(IF(LEFT(C6,1)="3","السنة الثالثة",IF(LEFT(C6,1)="2","السنة الثانية","السنة الاولى"))) انظر للمرفق مستوى.xlsx
    1 point
  33. انا قصدي بنفس مثالك يوجد اسم مكرر 3 مرات واسم اخر بس مره هل هذا صح من باب التوزيع العادل للمستويات
    1 point
  34. السلام عليكم ورخمة الله فى الملفين التاليين تم الاستغناء عن عمود الجنسية لتوفير عمود للرقم القومى و استكمال باقى البيانات المرتبطة به و قد تم التعديل على لاالملفات الاصلية و بدون خلل فى اداء الملفات ملحوظة هامة اخلب الاكواد لن تعمل اذا لم تسجل اسماء الطلاب فى الشيت العام ( اسم واحد على الاقل ) ملحوظة ثانية : اذا لوحظ ان بعذ المعادلات لاتعمل فى احد الشيتات - اعمل الخطوات الاتية : من تبويب Formulas ثم Calculation Options ثم اختر Automatic و تنتهى المشكلة اليكم الملفين شيت كنترول ثانية تجارة.xlsm شيت كنترول اولى تجارة.xlsm
    1 point
×
×
  • اضف...

Important Information