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

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

  1. Moosak

    Moosak

    أوفيسنا


    • نقاط

      4

    • Posts

      1,993


  2. ابوخليل

    ابوخليل

    أوفيسنا


    • نقاط

      4

    • Posts

      12,157


  3. محمد حسن المحمد

    • نقاط

      3

    • Posts

      2,216


  4. Foksh

    Foksh

    الخبراء


    • نقاط

      2

    • Posts

      2,155


Popular Content

Showing content with the highest reputation on 30 ديس, 2023 in all areas

  1. السلام عليكم ورحمة الله تعالى وبركاته نظرا للطلب والتساؤلات الكثيرة حول الموضوع او نقاط فرعيه منه قاصدا من ذلك أن يكون الموضوع شاملا ومرجعا للراغبين فى ذلك والدراسبن اليكم بناء القاعدة والذى اتمنى على الله تعالى ان يبدأ البناء وينتهى بشكل احترافى بقدر الإمكان وسوف نبدأ من الصفر تباعا ان شاء الله سوف يتم تحديث الموضوع تباعا الموضوع بأمر الله سوف اضع له الخطوط العريضة طبقا للمؤسسة التى اعمل بها لاننى أصلا سوف اقوم بقاعدة البيانات لمؤسستى وبقدر الإمكان سوف أضع فى الحسبان ان يكون التصميم عام بقدر الإمكان ليتناسب ويتماشى مع الجميع ومع رغباتهم بقدر الإمكان اهلا بكل من يريد المشاركة فى ادراة الموضوع والافكار والتعديل او الاضافة و ...... مبدئيا خلونا نتفق وقتى ضيق فى الفترة المقبلة لما انا مقدم عليه فلذلك ارجو الاعتذار مقدما ان لم التفت الى اى تساؤلات والتى وإن حدث سوف يتم تأجيلها حتى ينتهى مشروع اعداد التطبيق لمؤسستى تماما ان شاء الله بسم الله وعلى بركة الله بداية المشروع اول شئ تصيد وتسجيل الاخطاء بجدول وده وظيفته تسجيل الحطأ باسم الحدث أو الدالة المستخدمة فى الكود عند تنفيذ امر ما ورقم الخطا وصفه للمساعدة مستقبلا فى الوقوف على اماكن الاخطاء لعمل الصيانة اللازمة طبعا تم التطرق اليه فى هذا الموضوع: ويمكنكم الذهاب اليه والمتابعة من هنا طيب حلو جدا جدا وعلشان انا هبدأ بالأكواد ملاحظات هامة جدا جدا جدا جدا لبداية صحيحة واحترافيه : كتابة كود احترافي تتطلب ممارسات جيدة واتباع مبادئ برمجية صحيحة. فيما يلي بعض النصائح التي يمكن أن تساعدك في كتابة كود احترافي: توضيح الكود: استخدم تعليقات لشرح الجزء العلوي من الكود وللأمور المعقدة. اختر أسماء مفيدة وواضحة للمتغيرات والدوال تدل على وظائفها التى تمت كتابتها من اجلها. التنظيم: استخدم الهندسة المعمارية لتنظيم البرنامج إلى وحدات صغيرة وقابلة لإعادة الاستخدام. قم بتقسيم البرنامج إلى وحدات ووظائف مستقلة. الأداء: ابتعد عن الأكواد المكررة وقدّم الأكواد القابلة لإعادة الاستخدام في وحدات. حافظ على الأداء بتجنب العمليات الزائدة غير الضرورية. اختبار الوحدات: قم بكتابة اختبارات للتأكد من أن وحدات الكود الخاصة بك تعمل كما هو متوقع. الأمان: تحقق دائمًا من صحة البيانات الواردة والخارجة من الدوال. تفادى استخدام الأكواد المعرضة لثغرات أمان. تحسين الأداء: استخدم الهندسة العكسية لتحسين الأداء. ابحث عن فرص لتحسين الكفاءة والسرعة. استخدام التعليمات البرمجية النظيفة: ابتعد عن استخدام المتغيرات العالمية عندما لا تكون ضرورية. تجنب الأكواد التي تعتمد على التبديلات الطويلة. توثيق الكود: وفر توثيقًا جيدًا للكود ليسهل على المطورين الآخرين أو نفسك فهم كيف يعمل البرنامج. متابعة المعايير: اتبع معايير البرمجة المتعارف عليها . التحسين المستمر: كن مستعدًا لتحسين الكود الخاص بك بناءً على التعلم وتغييرات متطلبات المشروع. الالتزام بتلك المبادئ يمكن أن يساعدك في كتابة كود أكثر احترافية وقابل للصيانة. حلو الكلام وكل ده هيبان بقدر المستطاع فى التعليمات البرمجية التى سوف تتم تباعا يمكنك استخدام البادئات التالية لتسمية العناصر والكائنات بشكل منظم ويجعل الشيفرة أكثر وضوحًا. البادئات تعتمد على النوع أو الدور الذي تقوم به العناصر: وعلى سبيل المثال وليس الحصر المتغيرات: int للأعداد الصحيحة. dbl للأعداد العشرية. str للنصوص. bool للقيم البولية اى True , False أو Yes , No . Dim intCounter As Integer Dim dblAmount As Double Dim strName As String Dim boolIsValid As Boolean المصفوفات: arr للمصفوفات. Dim arrNames() As String الدوال: Function للدوال التي تعيد قيمة. Sub للإجراءات (دوال بدون إرجاع قيمة). Function CalculateTotal() As Double Sub DisplayMessage() الكائنات: frm للنماذج (Forms). rpt للتقارير (Reports). tbl للجداول (Tables). qry للاستعلامات (Queries). cls للكائنات أو الفئات لتعريف الكلاسات (Classes). bas وحدات الشيفرة- الوحدات النمطية (Modules). tbl للجداول (Tables). qry للاستعلامات (Queries). Dim frmCustomer As Form Dim rptSales As Report Dim tblData As TableDef Dim qryFilteredData As QueryDef الثوابت: c للثوابت. Const cMaxValue As Integer = 100 المتغيرات العامة: g للمتغيرات العامة. Public gCounter As Integer المتغيرات المؤقتة: temp للمتغيرات المؤقتة. Dim tempValue As Integer التعليقات: REM لتعليقات الشيفرة. REM هذا تعليق لشرح الشيفرة الأشكال والعناصر الرسومية: btn للأزرار (Buttons). lbl للتسميات (Labels). txt لحقول النص (Textboxes). chk لمربعات الاختيار (Checkboxes). القوائم والمراقبين: cmb لقائمة الاختيار (Comboboxes). lst لقوائم الاختيار (Listboxes). cb لمراقبات الصندوق (Checkboxes). الكائنات الأخرى: app لكائن التطبيق (Application). cnn لكائن الاتصال (Connection). doc لكائن المستند (Document). الحقول والأعمدة: fld لحقول البيانات (Fields). col لعمود البيانات (Column).
    2 points
  2. وبمشاركة استاذي @محمد احمد لطفى تفضل أستاذ @أسامة الغزالي محاولتي . تفقيط الارقام فى الاكسس لعملة سوريا .rar
    2 points
  3. تم الوصول الى الخلل السبب وجود فرز في هذه الاستعلامات order by وكان الكود يضيف هذه الزيادة الى الاسم ثم عمدت الى الاستفادة من الدالتين كليهما العلامة المنقوطة كانت تظهر في دالة الاستاذ foksh فعملت خلطة خاصة بين الكودين وخرجت بهذه النتيجة المحكمة : Public Function GetTableNameFromComboBox(cbo As ComboBox) As String On Error Resume Next Dim strTableName As String Dim ctl As Control Set ctl = cbo If Not ctl.RowSourceType = "" And Not ctl.RowSource Like "SELECT*" Then Exit Function End If If ctl.RowSourceType = "Table/Query" Then strTableName = Mid(ctl.RowSource, InStr(ctl.RowSource, "FROM ") + 5) ' يتم استخراج الجزء بعد الكلمة "FROM" strTableName = Left(strTableName, InStr(strTableName, ";") - 1) ' يتم استخراج الجزء قبل الفاصلة المنقوطة ElseIf ctl.RowSourceType = "Value List" Then strTableName = "Value List" End If ' استخرج اسم الجدول من الجملة SQL GetTableNameFromComboBox = strTableName End Function الفضل لله ثم لكم احبتي والاستدعاء : GetTableNameFromComboBox(ComboBoxName)
    2 points
  4. الكود الحالي يخدم القضية الحالية بعينها 🙂 أيضا ماذا لو كان مصدر الاستعلام جدولين أو أكثر ؟!! وماذا لو كان هناك شروط في جملة الاستعلام where ؟!! وماذا لو .... وماذا لو .... ؟؟؟؟؟ هناك احتمالات كثيرة .... 😁 وكل مشكلة ولها حل .. 🙂
    2 points
  5. تأكدت (اما) الأولى ... أسأل الله حسن الختام شكرا احبتي لم اتوقع النتيجة بهذه السرعة .. فجزاكم الله خير الجزاء بالنسبة للحلين فهما يشتركان في فكرة وطريقة استخراج واحدة آمل ان تعفوني من اختيار افضل اجابة ... فكل واحدة فريدة بذاتها ، والاختيار يحدده المكان الذي تستخدم فيه كود الاستاذ موسى جاء بالمختصر المفيد وكود الاستاذ foksh اخذ بالاحتياطات المحتملة اكرر شكري لكم .. بارك الله فيكم
    2 points
  6. معلمي الفاضل وأستاذنا القدير أبو خليل ، بداية ما زلت في قمة الشباب وثانياً يسعدني مشاركتك هذا الموضوع DatabaseUp8.accdb دائماً سبااااااق في الحلول أستاذنا @Moosak
    2 points
  7. أسأل الله العظيم لك طول العمر مع حسن العمل مع سلامة البدن يارب 🙂 تفضل عمي @ابوخليل استخدمت هذه الدالة لاستخراج اسم الجدول من جملة ال SQL : Function ExtractTableNameFromSQL(strSQL As String) As String Dim strTableName As String ' استخرج اسم الجدول من الجملة SQL strTableName = Mid(strSQL, InStr(strSQL, "FROM ") + 5) ' يتم استخراج الجزء بعد الكلمة "FROM" strTableName = Left(strTableName, InStr(strTableName, ";") - 1) ' يتم استخراج الجزء قبل الفاصلة المنقوطة ' اعرض اسم الجدول ExtractTableNameFromSQL = strTableName End Function DatabaseUp8.rar
    2 points
  8. السلام عليكم ورحمة الله وبركاته تحية طيبة وبعد: بعد الاطلاع على الملف تبين أن عمود الكميات كتبت فيه البيانات بتنسيق نص يمكنك تحويلها إلى رقم أو Number هناك اختلاف بين رموز الأصناف فقد يكون رمز الصنف في صفين أو أكثر لكن أسماء الأصناف المقابلة لهذه الرموز تم تعديلها شيئاً ما. ولذلك أنصحك باعتماد رموز الأصناف للتعداد أو لحساب الكميات لها حيث يمكنك استخدام دالة Sumif أو Sumifs لحساب الكميات لكل صنف واعتماد دالة Countif لعددها والله أعلم والسلام عليكم تقرير المشتريات صنف1.xlsx
    2 points
  9. ضع مثال لكى نستطيع المساعدة ومرفق مثال تفقيط الارقام فى الاكسس.accdb
    1 point
  10. أخي هاني من الأسهل جدا ان تستخدم الـ Pivot Table وسيكون أحتر احترافية وممكن تضع Timeline , Slicer Unquie Data.xlsx
    1 point
  11. شكرا لك من أعماق قلبي الله يسعد ويرضى عليك 😍 @محمد حسن المحمد
    1 point
  12. الدالة LOOKUP يمكنك الاطلاع على بناء الجملة بالإضافة إلى الرابط الذي أرفقه لك لتتم الاستفادة منه بإذن الله تعالى: شرح دالة Lookup للبحث واستخراج القيم والله أعلى وأعلم والسلام عليكم.
    1 point
  13. Copy of مسلسل فاتورة على حسب نوع الفاتورة.xlsm
    1 point
  14. استاذ @الدكتور جمال راجح باترك الله فيك وجعلها في ميزان حسناتك
    1 point
  15. تفضل المرفق التالي .. تم اضافة ملف توليد مفتاح التسجيل حماية البرنامج عن طريق رقم الهارد والمعالج واللوحة الأم_في حال نقص احدى القطع فان البرنامج يستمر بالعمل.zip
    1 point
  16. جرب هذا الماكرو Sub LAST_CEL() Application.Goto Reference:=Range("A" & Application.Max(Range("a:a")) + 13) End Sub
    1 point
  17. المجموعة الخامسة المجموعة الخامسة.rar
    1 point
×
×
  • اضف...

Important Information