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

البحث في الموقع

Showing results for 'فورم'.

  • Search By Tags

    اكتب الكلمات المفتاحيه بينها علامه الفاصله
  • Search By Author

نوع المحتوي


الاقسام

  • الترحيب
    • نرحب بزوار الموقع
  • قسم تطبيقات و لغات مايكروسوفت
    • منتدى الاكسيل Excel
    • قسم الأكسيس Access
    • منتدي الوورد Word
    • منتدى الباوربوينت
    • منتدى الاوتلوك Outlook
    • المنتدى التقني العام و تطبيقات الأوفيس الأخرى
    • إعلانات شخصية للأعضاء
    • قنوات تعليمية وإعلانات دورات تدريبية
  • إدارة المشاريع والبحث العلمي وعلوم البيانات
    • إدارة المشاريع ومحافظ المشاريع
    • البحث العلمي والإحصاء
    • الذكاء الإصطناعي و التنقيب فى البيانات
  • القسم العام
    • قسم الاقتراحات و الملاحظات
    • مشاركات المدونات
    • أوفيسنا على الفيسبوك

الاقسام

  • VBA Code Library
  • قسم الإكسيل
  • قسم الأكسيس
  • قسم الوورد
  • Project Management
  • Self development التطويرالذاتي
  • معلومات مفيدة
  • أدوات عامة

مدونات

  • M-Taher's Blog
  • مدونة محمد طاهر
  • Officena
  • اا الفاروق اا
  • ‎مدونة أخبار التكنولوجيا
  • M-Taher's Blog
  • يحيى حسين's Blog
  • خبور خير's Blog
  • Dr. AbdelMalek Abu Sheikh's Blog
  • m.hindawi's Blog
  • احمدزمان's Blog
  • الحسامي
  • مدونة أ / محمد صالح
  • yahiaoui's Blog
  • عبدالله المجرب's Blog
  • صيد الخواطر
  • حمادة عمر مدونة
  • مدونة جعفر
  • مدونة عادل حنقي
  • مجدى يونس: لمسة وفاء لمنتدى اوفيسنا
  • Excel Expert Financial&Accounting
  • مدونة اعمال ايقونات الماس لمنتدى اوفيسنا
  • رقائق فى دقائق
  • Shivan Rekany
  • Foksh

ابحث عن النتائج فى ......

ابحث عن النتائج التي تحوي ....


تاريخ الانشاء

  • بدايه

    End


اخر تحديث

  • بدايه

    End


Filter by number of...

انضم

  • بدايه

    End


مجموعه


Job Title


البلد


الإهتمامات


AIM


MSN


Website URL


ICQ


Yahoo


Jabber


Skype

  1. السلام عليكم برنامج لاسترجات الكتب في الفورم بحث برقم الطالب وعرض الكتب في فورم فرعي المشكلة في اختيار الكتب المسترجعة وتاريخ الاسترجاع الحالة واذا في طريقة ثانية اسهل للفورم ما عندي مشكلة returnbooks.accdb
  2. عمل فورم من خلال ملف بوربوينت للعمليات الحسابية الفيديو
  3. فورم عمليات حسابية لتعليم الاطفال رابط الملف اسفل الفيديو
  4. عليكم السلام اكسس هذا عمله .. وينصح دوما بحفظ الصور بمجلد خارج قاعدة البيانات المنتدى مليء بأمثلة ومرفقات .. فقط عليك البحث وستجد الكثير واذا لديك فورم جاهز وتريد المساعدة على التنفيذ فقط ارفق مثالك .. وستجد اخوتك هنا يبادرون بمساعدتك
  5. شكرا لك اخي الكريم ولكني اريد الملف كم هنا ( اريد فقط انت البيانات باللون الاصفر وليس كامل الملف لان الفاتورة فورم جاهز موجود عندي واريد فقط اظهر المربع باللون الاصفر مع الحافظ علي بقي البيانات كما هي مرفق عدد 2 ملف pdf للتوضيخ الملف رقم 12 اللي حضرتك عدلتها ( اما الملف رقم 11 هو الملف الاصلي ومطلوب فقط اذن المربع باللون الاصفر مع الابقاء علي الملف الصلي كما هو ) اسف للاطال والازعاج وشكرا جزيلا لوقتك الكريم 12.pdf 11.pdf شكرا لك اخي الكريم ولكني اريد الملف كم هنا ( اريد فقط انت البيانات باللون الاصفر وليس كامل الملف لان الفاتورة فورم جاهز موجود عندي واريد فقط اظهر المربع باللون الاصفر مع الحافظ علي بقي البيانات كما هي مرفق عدد 2 ملف pdf للتوضيخ الملف رقم 12 اللي حضرتك عدلتها ( اما الملف رقم 11 هو الملف الاصلي ومطلوب فقط اذن المربع باللون الاصفر مع الابقاء علي الملف الصلي كما هو ) اسف للاطال والازعاج وشكرا جزيلا لوقتك الكريم 11.pdf 12.pdf شكرا لك اخي الكريم ولكني اريد الملف كم هنا ( اريد فقط انت البيانات باللون الاصفر وليس كامل الملف لان الفاتورة فورم جاهز موجود عندي واريد فقط اظهر المربع باللون الاصفر مع الحافظ علي بقي البيانات كما هي مرفق عدد 2 ملف pdf للتوضيخ الملف رقم 12 اللي حضرتك عدلتها ( اما الملف رقم 11 هو الملف الاصلي ومطلوب فقط اذن المربع باللون الاصفر مع الابقاء علي الملف الصلي كما هو ) اسف للاطال والازعاج وشكرا جزيلا لوقتك الكريم 11.pdf 12.pdf
  6. السلام عليكم ورحمة الله السادة الكرام الملف المرفق كان في السابق شغال تمام والان ظهرت لي مشكلة لا اعرف سببها وهي عند القيام بالضغط على ايقونة طباعة الارصدة وكتابة التاريخ والضغط على البحث تظهر الصورة المرفقة كانت في السابق لاتظهر ممكن المساعدة وطلب اخر اريد عند تسجيل الاذونات لايتم تسجيل الاذن الا بعد كتابة رقم الاذن وظهور رسالة لابد من كتابة رقم الاذن وشكرا لحضراتكم مشكلة.xlsm
  7. السلام عليكم ورحمة الله السادة الكرام عندي مشكلة حصلت في فورم الطباعة في الملف المرفق لسيادتكم كان كود الطباعة شغال عند اختيار صنف معين او طباعة الارصدة كلها بعد العمل على الملف لفترة اصبح الكود لايعمل وعند الضغط عليه يظهر في خانة تحديد الصنف ( الصنف-وكروشيه)فقط وباقي الاصناف لا تظهر وعند الضغط على طباعة الارصدة كلها لايظهر شئ لاادي ما العمل اتمنى حل مشكلتي وشكرا جدا لحضراتكم طباعة.xlsm
  8. وعليكم السلام ورحمة الله وبركاته حسب علمي في Microsoft Excel لا يمكن الانتقال لخلية أخرى “تلقائيًا بالكامل” أثناء الكتابة بدون أي إجراء من المستخدم، لأن الخلية تبقى في وضع التحرير حتى يتم تأكيد الإدخال. لكن يمكن بطريقة اخرى عن طريق فورم بحيث يتم فتح الفورم ثم اختيار اول خلية المراد ادخال الدرجة اليها ويكون الامر تلقائيا والتكست بوكس يتعامل مع اي عمود بشرط تحديد بداية اول للدرجات والكود يتعامل مع درجتين مثل 15 او 45 فبمجرد الانتهاء من كتابة الرقم الثاني يتنقل المؤشر تلقائيا الى الخلية التي اسفل منها اذا وجدت درجات من رقم واحد مثل 7 يجب كتابتها في التكست بوكس 07 اذا كانت لديك درجات من 3 ارقام مثل 123 يتم التعديل بالكود في الجزء If Len(v) >= 2 Then يتم تعديل 2 الى 3 ادخال الدرجات.xlsb
  9. السلام عليكم الاخوة الافاضل بعد التحية الملف المرسل محتاج اضافة فورم يظهر فيه حركة الصنف لكود معين او عدة اكواد بحيث عند كتابة كود او عدة اكواد تظهر البيانات كما هي موضحة داخل صفحة حركة الصنف داخل ملف العمل مع اضافة زرد داخل الفورم عند الضغط عليه يقوم بطباقة البيانات بصيغة PDF وبالنسبة للتاريخ يتغير بنوع الحركة والرصيد يعتبر ثابت لايتغير ارجو ان اكون قمت بتوضيح المطلوب مع الشكر 1اضافة.xlsm
  10. الكاتب قام بنشر منذ 13 ساعات شكرا لك اخي الكريم ولكني اريد الملف كم هو( اريد فقط البيانات باللون الاصفر وليس كامل الملف لان الفاتورة فورم جاهز موجود عندي واريد فقط اظهر المربع باللون الاصفر مع الحافظ علي بقي البيانات كما هي مرفق عدد 2 ملف pdf للتوضيخ الملف رقم 12 اللي حضرتك عدلتها ( اما الملف رقم 11 هو الملف الاصلي ومطلوب فقط اظهار المربع باللون الاصفر مع الابقاء علي الملف الصلي كما هو ) اسف للاطال والازعاج وشكرا جزيلا لوقتك الكريم
  11. شكرا لك اخي الكريم ولكني اريد الملف كم هنا ( اريد فقط انت البيانات باللون الاصفر وليس كامل الملف لان الفاتورة فورم جاهز موجود عندي واريد فقط اظهر المربع باللون الاصفر مع الحافظ علي بقي البيانات كما هي مرفق عدد 2 ملف pdf للتوضيخ الملف رقم 12 اللي حضرتك عدلتها ( اما الملف رقم 11 هو الملف الاصلي ومطلوب فقط اذن المربع باللون الاصفر مع الابقاء علي الملف الصلي كما هو ) اسف للاطال والازعاج وشكرا جزيلا لوقتك الكريم 11.pdf 12.pdf
  12. السلام عليكم اساتذتي الكرام تكملة للموضوع الفارط من هنا المطلوب مساعدة في فتح تقرير 10 عند اختيار "تصريح ابوي لقاصر" عن طريق الكود وبدون مصدر سجلات ويخص الابن القاصر فقط اي "العمر اقل من 18 سنة" Database22.rar
  13. السلام عليكم ورحمة الله السادة الافاضل محتاج مساعدة في اضافة يوزر فورم جديدة مثل فورم رقم 8 ولكن تختلف في طريقة الطباعة محتاج اطبع ارقام الاذونات سواء اضافة او صرف او مرتجع من خلال 1- من تاريخ الي تاريخ 2- من خلال رقم الاذن نفسه ولسيادتكم وافر التحية مخزن 3.xlsm
  14. برمجة اكسل.xlsبرمجة اكسل.xlsm السلام عليكم ورحمة الله وبركاته، إخواني الخبراء في منتدى أوفيسنا، تحية طيبة وبعد.. أعمل حالياً على تطوير نظام لإدارة بيانات مركز ترفيهي يحتوي على عدة مناطق (نسيم، حديقة، حميدة). قمت بتصميم واجهة إدخال يدوية ، ولكنني أطمح لتحويلها إلى UserForm احترافي وشامل، بالإضافة إلى بناء نظام تقارير وإحصاءات.و اضافة الالعاب في المناطق الثلاثة المطلوب من كرمكم: واجهة إدخال (UserForm): تصميم فورم يجمع كافة الخانات الموجودة في الواجهة (قونفلابل، قطار، طومبناج، عدد العمال.. إلخ). منع تكرار التاريخ: أرغب في كود ذكي يقوم بالبحث في ورقة (Data) قبل الترحيل؛ فإذا كان التاريخ مسجلاً مسبقاً يقوم بـ "تحديث" البيانات بدلاً من تكرار السطر. نظام تقارير وإحصاء: إضافة ميزة لاستخراج إحصائيات يومية أو شهرية بناءً على البيانات المخزنة في ورقة (Data). جمالية التصميم: يفضل أن تكون الألوان متناسقة واحترافية (ألوان هادئة وتدرجات تليق بنظام إداري).
  15. السلام عليكم في الملف المرفق فورم وظيفتة استعلام عن بعض البيانات الخاصة بغياب الطلاب ضبطت كل اسماء الازرار واللست بكس ومطابقة باسمائها في الكود ولكن غلبني خطأ لم استطع حله ... مرفق صورة من الخطأ فارجو منكم تجربة الفورم وازالة الخطأ المتكرر Book5.xlsm
  16. السلام عليكم اخواني الأعزاء لدي برنامج الصادر والوارد بعد الانتهاء من تصميمة على جهاز شخصي (لا بتوب) قمت بفتحه في حاسوب مكتبي ظهرت عناصر (الازرار)البرنامج كبيرة جدا وغير منظمة بعد البحث في موقع اوفيسنا و تجربة عدة حلول ، أصبحت مناسبة في الشاشة لكن بعد فتحه في جهاز مكتبي اخر بعض عناصر(الازرار) الفورم المتواجدة في حواف الفورم لا تظهر بسبب الفورم اكبر من الشاشة. اريد يكون الفورم ملائم لشاشات والازرار لا تكون كبيرة وانما صغيرة نفس الحجم الأصلي . اريد الزر يكون ثابت في كل جهاز ولا يتغير والفورم يكون متلائم. اخواني والله لي اكثر من أسبوعين أحاول لحد الان ولا استطعت ارجوكم ساعدوني ولكم مني جزيل الشكر
  17. السادة الأفاضل ..أرجو الافادة هل يمكن عمل فورم يقوم بنقل عدد معين من تخصص معين من عامود التخصص لمدرسة معينة الى لجنة معينة ... مرفق جدول للتوضيح ولكم الشكر test ai.accdb
  18. السلام عليكم ورحمة الله الاخوة الكرام حياكم الله عندي في المرفق فورم فيه كومبوبوكس اريد تعبئته بأسماء قواعد البيانات الموجودة في البرنامج وعند اختيار اي قاعدة في الكومبوبوكس نضغط زر الحدف ينسخ اسم وحقول القاعدة المختارة الى قاعدة جديدة ويحدف القديمة ملاحظة" اريد قاعدة البيانات الجديدة تكون فارغة من البيانات وجزاكم الله خير الجزاء نسخ قاعدة البيانات قبل الحدف.accdb
  19. في حالة ادخال عدد كثير من سجلات الى فورم فرعي مستمر ( فورم فرعي مستمر يهتز ) و هذا شيء غير جميل . اريد وقف اهتزاز فورم فرعي مستمر M13.rar
  20. السلام عليكم .. ممكن تعديل على فورم البحث والاضافة بحيث يعتمد على نطاق معين وليس كجدول كما هو موجود في الملف المرفق .. أي يكون النطاق المستخدم في الكود من A1الى اخر صف موجود فيه بيانات مثلا U180 بدل النطاق Tableau1 الموجود في الكود .. ويكون اضافة التسلسل اوتوماتيكي وليس يدويا... وعند حذف حقل من الفورم يقوم بارسال القيد المحذوف الى صفحة المحذوفات في الفورم.. واعادة ضبط التسلسل بعد الحذف وكذلك اضافة عمود صورة الموظف تكون في فولدر نفس مسار المصنف ويحتوي على فولدرات باسم كل موظف تحتوي على ملفات مرفقة صور او pdf وتظهر الصورة لكل موظف في الفورم عند اختياره .. وكذلك وجود زر لاستعراض الفولدر الخاص بكل موظف من الفورم .. تحياتي للجميع منظومة-الشؤون-الادارية.xlsm
  21. هلا باستاذنا الفاضل انا مش بستخدم النماذج القديمه اللى كانت 4 متسابقين بمراحلهم انما تسلسل شغلى كالاتى فورم frm_Options عدد اسئلة المرحله اخترت 10اسئله المفروض ان كل شخص يدخل المسابقه زمن الاجابه سابقا كان لكل سؤال المطلوب انه يكون زمن كلى للاجابه على ال10 اسئله مثلا ليه اللجنه ابدت ملاحظه افرض ان واحد جاوب اول سؤال فى ربع دقيقه وجاله سؤال تانى كان محتاج منه تفكير لمده اكتر من دقيقه فعشان كده طلب الزمن يكون شامل كمية الاسئله على بعضيعنى التعديل لزمن الاجابه بحيث يشمل عدد الاسئله ككل هذا اولا عند بدء مسابقه جديده بيفتح فورم frm_StartExam المفروض ان الشخص المتقدم بيكتب رقمه من البيانات اللى مسجل بها الاعضاء سابقا فى جدول tb_data بيعرض بياناته مثل اسمه ونوع المسابقه او الامتحان المتقدم ليه مسجلهم مجموعه (1) و 2 لو تاكد من بياناته بيدخل المسابقه او الامتحان الخاص به بيفتح فورم frm_QueChoose سابقا كان بيختار سؤال عشوائى سؤال واحد المطلوب دلوقتى يختار عدد الاسئله كلهم لو موجود 10 يختار ال 10 مره واحده بناء على التصنيف ثم فتح نموذج frm_OutQ لعرض الاسئله كان سابقا بغد الضغط على موافق بنختر التالى بيرجع يجيب سؤال جديد عشوائى ويبدا يعد الزمن للسؤال المطلوب بعد الضغط على زر التالى يعرض السؤال والزمن مستمر فى التناقص وهكذا
  22. Private Sub cmdSaveTransactions_Click() Call cmdSaveTransactions_Click_Optimized End Sub Private Sub cmdSaveTransactions_Click_Optimized() Dim wsTransactions As Worksheet Set wsTransactions = ThisWorkbook.Sheets("إيرادات ومصروفات") Dim wsCashBox As Worksheet Set wsCashBox = ThisWorkbook.Sheets("صندوق الخزينة") Dim lastRowTransactions As Long Dim i As Long Dim transactionDate As Date Dim transactionAmount As Double Dim dictCashBox As Object ' Dictionary لتخزين بيانات صندوق الخزينة مؤقتًا (التاريخ كمفتاح) Set dictCashBox = CreateObject("Scripting.Dictionary") Dim transactionData As Variant Dim outputArray() As Variant Dim outputRow As Long Dim lastRowCashBox As Long ' تعطيل تحديث الشاشة والأحداث والحساب Application.ScreenUpdating = False Application.EnableEvents = False Application.Calculation = xlCalculationManual ' الحصول على آخر صف في شيت الإيرادات والمصروفات lastRowTransactions = wsTransactions.Cells(Rows.Count, "A").End(xlUp).Row + 1 ' حفظ البيانات من الليست بوكس إلى شيت الإيرادات والمصروفات (كما كان) For i = 0 To ListBox1.ListCount - 1 wsTransactions.Cells(lastRowTransactions + i, 1).Value = ListBox1.List(i, 0) wsTransactions.Cells(lastRowTransactions + i, 2).Value = ListBox1.List(i, 1) wsTransactions.Cells(lastRowTransactions + i, 3).Value = ListBox1.List(i, 2) wsTransactions.Cells(lastRowTransactions + i, 4).Value = ListBox1.List(i, 3) wsTransactions.Cells(lastRowTransactions + i, 5).Value = ListBox1.List(i, 4) wsTransactions.Cells(lastRowTransactions + i, 6).Value = ListBox1.List(i, 5) wsTransactions.Cells(lastRowTransactions + i, 7).Value = ListBox1.List(i, 6) Next i ' *** معالجة شيت صندوق الخزينة باستخدام Dictionary لتجميع القيم حسب التاريخ *** ' قراءة البيانات الموجودة في صندوق الخزينة إلى Dictionary lastRowCashBox = wsCashBox.Cells(Rows.Count, "A").End(xlUp).Row If lastRowCashBox > 1 Then transactionData = wsCashBox.Range("A2:D" & lastRowCashBox).Value For i = LBound(transactionData) To UBound(transactionData) Dim dtKey As String: dtKey = Format(transactionData(i, 1), "yyyy-mm-dd") Dim revenueFromSheet As Double: revenueFromSheet = transactionData(i, 3) Dim expenseFromSheet As Double: expenseFromSheet = transactionData(i, 4) Dim previousBalanceFromSheet As Double: previousBalanceFromSheet = transactionData(i, 2) If Not dictCashBox.Exists(dtKey) Then dictCashBox(dtKey) = Array(previousBalanceFromSheet, revenueFromSheet, expenseFromSheet) ' رصيد سابق، إيرادات، مصروفات Else Dim existingData As Variant existingData = dictCashBox(dtKey) existingData(0) = Application.Max(existingData(0), previousBalanceFromSheet) ' نأخذ الرصيد السابق الموجود (قد يكون تراكمي) existingData(1) = existingData(1) + revenueFromSheet existingData(2) = existingData(2) + expenseFromSheet dictCashBox(dtKey) = existingData End If Next i End If ' تحديث Dictionary ببيانات المعاملات الجديدة من الليست بوكس For i = 0 To ListBox1.ListCount - 1 transactionDate = Format(CDate(ListBox1.List(i, 1)), "yyyy-mm-dd") transactionAmount = CDbl(ListBox1.List(i, 5)) Dim revenue As Double: revenue = 0 Dim expense As Double: expense = 0 If ListBox1.List(i, 2) = "إيرادات" Then revenue = transactionAmount ElseIf ListBox1.List(i, 2) = "مصروفات" Then expense = transactionAmount End If If dictCashBox.Exists(transactionDate) Then ' Dim existingData As Variant existingData = dictCashBox(transactionDate) existingData(1) = existingData(1) + revenue existingData(2) = existingData(2) + expense dictCashBox(transactionDate) = existingData Else ' إذا كان التاريخ غير موجود، نحاول الحصول على آخر رصيد سابق من آخر تاريخ في Dictionary (إذا كان موجودًا) Dim lastBalance As Double: lastBalance = 0 If dictCashBox.Count > 0 Then Dim sortedKeys As Variant: sortedKeys = SortDictionaryKeys(dictCashBox) ' دالة لفرز مفاتيح Dictionary lastBalance = dictCashBox(sortedKeys(UBound(sortedKeys)))(0) + dictCashBox(sortedKeys(UBound(sortedKeys)))(1) - dictCashBox(sortedKeys(UBound(sortedKeys)))(2) End If dictCashBox(transactionDate) = Array(lastBalance, revenue, expense) End If Next i ' تحويل Dictionary إلى مصفوفة للإخراج وفرزها حسب التاريخ Dim keys As Variant: keys = dictCashBox.keys ReDim outputArray(1 To dictCashBox.Count, 1 To 4) outputRow = 1 For i = LBound(keys) To UBound(keys) Dim dateValue As Date If IsDate(keys(i)) Then dateValue = CDate(keys(i)) Else Debug.Print "تحذير: مفتاح غير صالح للتاريخ: " & keys(i) dateValue = DateSerial(1900, 1, 1) End If outputArray(outputRow, 1) = dateValue outputArray(outputRow, 3) = dictCashBox(keys(i))(1) ' إيرادات outputArray(outputRow, 4) = dictCashBox(keys(i))(2) ' مصروفات outputRow = outputRow + 1 Next i ' فرز المصفوفة حسب التاريخ If UBound(outputArray, 1) > 0 Then SortArrayByColumn outputArray, 1 End If ' حساب الرصيد السابق وكتابة المصفوفة إلى شيت صندوق الخزينة ReDim finalOutputArray(1 To UBound(outputArray, 1) + 1, 1 To 4) finalOutputArray(1, 1) = "التاريخ" finalOutputArray(1, 2) = "رصيد سابق" finalOutputArray(1, 3) = "رصيد إجمالي اليوم (مدين للإيرادات)" finalOutputArray(1, 4) = "رصيد إجمالي اليوم (دائن للمصروفات)" Dim runningBalance As Double: runningBalance = 0 For i = 1 To UBound(outputArray, 1) finalOutputArray(i + 1, 1) = outputArray(i, 1) finalOutputArray(i + 1, 2) = runningBalance finalOutputArray(i + 1, 3) = outputArray(i, 3) finalOutputArray(i + 1, 4) = outputArray(i, 4) runningBalance = runningBalance + outputArray(i, 3) - outputArray(i, 4) Next i ' مسح البيانات القديمة وكتابة المصفوفة النهائية wsCashBox.Cells.ClearContents wsCashBox.Range("A1").Resize(UBound(finalOutputArray, 1), 4).Value = finalOutputArray wsCashBox.Columns.AutoFit ' إضافة صفوف إجمالي نهاية الشهر (يجب أن يتم بعد كتابة البيانات وفرزها) Call AddMonthlyTotalsToCashBox ' مسح الليست بوكس بعد الحفظ ListBox1.Clear ' ListBox1.AddItem "رقم المسلسل,التاريخ,نوع السند,كود التوريد,اسم التوريد,المبلغ,الملاحظات" TXTSerialNumber.Text = "" ' إعادة تمكين تحديث الشاشة والأحداث والحساب Application.ScreenUpdating = True Application.EnableEvents = True Application.Calculation = xlCalculationAutomatic MsgBox "تم حفظ البيانات وتحديث رصيد صندوق الخزينة بنجاح (مع تجميع القيم).", vbInformation End Sub Function SortDictionaryKeys(dict As Object) As Variant Dim arr() As Variant Dim key As Variant Dim i As Long ReDim arr(1 To dict.Count) i = 1 For Each key In dict.keys arr(i) = key i = i + 1 Next key ' فرز المصفوفة حسب التاريخ Dim j As Long, temp As Variant For i = LBound(arr) To UBound(arr) - 1 For j = i + 1 To UBound(arr) Dim date1 As Date Dim date2 As Date If IsDate(arr(j)) And IsDate(arr(i)) Then date1 = CDate(arr(j)) date2 = CDate(arr(i)) If date1 < date2 Then temp = arr(i) arr(i) = arr(j) arr(j) = temp End If Else ' معالجة حالة الخطأ إذا لم يكن المفتاح تاريخًا صالحًا (لأغراض التصحيح) Debug.Print "تحذير: مفتاح غير صالح للتاريخ أثناء الفرز: " & arr(i) & " أو " & arr(j) End If Next j Next i SortDictionaryKeys = arr End Function ' دالة مساعدة لفرز مصفوفة ثنائية الأبعاد حسب عمود معين Sub SortArrayByColumn(arr As Variant, col As Long) Dim i As Long, j As Long, temp As Variant For i = LBound(arr) To UBound(arr) - 1 For j = i + 1 To UBound(arr) If arr(j, col) < arr(i, col) Then ' تبديل الصفوف For k = LBound(arr, 2) To UBound(arr, 2) temp = arr(i, k) arr(i, k) = arr(j, k) arr(j, k) = temp Next k End If Next j Next i End Sub ' دالة لإضافة صفوف إجمالي نهاية الشهر إلى شيت صندوق الخزينة (يتم استدعاؤها بعد تحديث البيانات) Sub AddMonthlyTotalsToCashBox() Dim wsCashBox As Worksheet Set wsCashBox = ThisWorkbook.Sheets("صندوق الخزينة") Dim lastRow As Long Dim i As Long Dim currentMonth As Long Dim totalRevenue As Double Dim totalExpenses As Double Dim startOfMonthRow As Long lastRow = wsCashBox.Cells(Rows.Count, "A").End(xlUp).Row If lastRow <= 1 Then Exit Sub ' لا توجد بيانات startOfMonthRow = 2 If startOfMonthRow <= lastRow Then currentMonth = Month(wsCashBox.Cells(startOfMonthRow, 1).Value) totalRevenue = 0 totalExpenses = 0 For i = 2 To lastRow Dim nextMonth As Long nextMonth = Month(wsCashBox.Cells(i, 1).Value) totalRevenue = totalRevenue + wsCashBox.Cells(i, 3).Value totalExpenses = totalExpenses + wsCashBox.Cells(i, 4).Value If nextMonth <> currentMonth Then ' إضافة صف الإجمالي للشهر السابق Dim totalBalanceEndOfMonth As Double If i > startOfMonthRow Then totalBalanceEndOfMonth = wsCashBox.Cells(i - 1, 2).Value + Application.WorksheetFunction.Sum(wsCashBox.Range("C" & startOfMonthRow & ":C" & i - 1)) - Application.WorksheetFunction.Sum(wsCashBox.Range("D" & startOfMonthRow & ":D" & i - 1)) Else totalBalanceEndOfMonth = wsCashBox.Cells(startOfMonthRow - 1, 2).Value ' الرصيد السابق إذا كان شهرًا واحدًا فقط End If lastRow = wsCashBox.Cells(Rows.Count, "A").End(xlUp).Row + 1 wsCashBox.Cells(lastRow, 1).Value = "إجمالي شهر " & MonthName(currentMonth) wsCashBox.Cells(lastRow, 2).Value = totalBalanceEndOfMonth wsCashBox.Cells(lastRow, 3).Value = totalRevenue - wsCashBox.Cells(i, 3).Value ' نطرح قيمة الشهر الجديد wsCashBox.Cells(lastRow, 4).Value = totalExpenses - wsCashBox.Cells(i, 4).Value ' نطرح قيمة الشهر الجديد currentMonth = nextMonth totalRevenue = wsCashBox.Cells(i, 3).Value totalExpenses = wsCashBox.Cells(i, 4).Value startOfMonthRow = i End If Next i ' إضافة إجمالي الشهر الأخير بعد انتهاء الحلقة Dim totalBalanceEndOfLastMonth As Double totalBalanceEndOfLastMonth = wsCashBox.Cells(lastRow, 2).Value + Application.WorksheetFunction.Sum(wsCashBox.Range("C" & startOfMonthRow & ":C" & lastRow)) - Application.WorksheetFunction.Sum(wsCashBox.Range("D" & startOfMonthRow & ":D" & lastRow)) lastRow = wsCashBox.Cells(Rows.Count, "A").End(xlUp).Row + 1 wsCashBox.Cells(lastRow, 1).Value = "إجمالي شهر " & MonthName(currentMonth) wsCashBox.Cells(lastRow, 2).Value = totalBalanceEndOfLastMonth wsCashBox.Cells(lastRow, 3).Value = totalRevenue wsCashBox.Cells(lastRow, 4).Value = totalExpenses End If End Sub السلام عليكم ورحمة الله وبركاتة رجاء المسااعدة عند ترحيل المبلغ سواء كان ايرادات او مصروفات يتم تكرار التاريخ وعدم جمع المبلغ فى التاريخ المحدد فى صندوق الخزينة ويتم تكرار التاريخ وتكرار المبلغ سواء ايراد او مصروفات برنامج خزينة ايرادات ومصروفات.xlsm
      • 1
      • Like
  23. فورم ذكاء اصطناعي اضافة وبحث وحذف واغلاق لفورم اكسل الفيديو الملف فورم بحث بالاسم او رقم التليفون 10 فورم بحث واضافة وحذف بيانات بالذكاء الاصطناعي.xls
  24. لم تجبني على كل حال ندع هذه الاستفسارات للخطوة القادمة تفضل : تم اعداد البرنامج لادخال الدرجات خطوات العمل على البرنامج لأول مرة على الترتيب 1- اعداد المواد وخصائصها في فورم المواد 2-ادخال بيانات الطلاب من فورم تسجيل الطلاب 3- اعداد السنة الدراسية من فورم اعداد السنة الدراسية 4- فتح فورم ادخال الدرجات والبدء بالعمل .................................................... وبما ان الفقرة 1 والفقرة 2 تم عملها فعلا لذا اقرأ جيدا خطواتك التي يجب ان تسير عليها اقول هذا الكلام حتى ابين لك ما يحدث برمجيا عند فتح المثال سيظهر لك فورم البداية اتركه مفتوحا واذهب الى الجداول وافتح جدول الدرجات Tbl_degree_Detail سوف تجده خاليا أغلقه ثم ارجع الى فورم البداية المفتوح وانقر على زر : اعداد الفصل الدراسي سوف يفتح لك فورم الاعداد : انقر على اعداد ثم اغلق الفورم ارجع الى جدول Tbl_degree_Detail وانظر الى النتيجة لقد تم رصد الطلاب وموادهم ولم يتبقى الا ادخال الدرجات اغلق الجدول ....................................... من فورم البداية انقر على زر ادخال الدرجات وابدأ العمل بعد تسجيلك للدرجات كاملة من الفصل الأول وحتى الاختبارات النهائية ارفع مثالك لننتقل للخطوة التالية وهي التعويض والرأفة ملحوظة : يوجد 4 طلاب ... ادخل درجاتهم بحيث يتوفر جميع الحالات irSchool2.rar
  25. تم تعديل المشروع بطريقة مختلفة تماما عن ما كنت افكر به سابقا يمكننا القول الآن ان العمل احترافي الوصف للتعديل الجديد : 1- يدعم فترتين مختلفتين مفتوحتين 2- لا يوجد حد فاصل بين الصباح والمساء .. كل فترة تعمل بشكل مستقل من خلال شاشة واحدة 3- الفترة تبدأ قبل وقت الدخول بساعة وتنتهي بعد وقت الانصراف بساعة ايضا .. 4- لا يمكن التوقيع خارج الوقت المعتبر للفترة .. 5- اذا لم يوقع الموظف خروج .. عند الحضور من الغد يسجل حضور ويبقى حقل خروج الأمس فارغا 6- تم التطبيق على شاشة توقيت الانترنت وعلى شاشة التوقيت المحلي الضوابط : مهم جدا : 1- ادخال البيانات الصحيحة كاملة في فورم التحكم : وقت الحضور الصباحي/وقت الحضور المسائي/ عدد ساعات العمل الصباحي والمسائي والوقت الاضافي ان وجد اكسس هو من يحدد وقت الخروج بناء على وقت الحضور + ساعات العمل 2- تعيين الفترات للموظفين في فورم الأسماء عند انتقال الموظف من الصباح الى المساء فقط يتم تغيير وقته في فورم الاسماء . اذا اردنا ان يعمل الموظف في الفترتين كليهما عليك تسجيله بمعرف جديد ................................. جرب كثيرا ووافني بالنتيجة اذا كل شيء تمام خبرني كي اهديكم المخرج النهائي ChkInOut_NetUp3.rar
×
×
  • اضف...

Important Information