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

أ / محمد صالح

أوفيسنا
  • Posts

    4470
  • تاريخ الانضمام

  • Days Won

    196

كل منشورات العضو أ / محمد صالح

  1. أولا أشكر صاحب الملف الأصلي أ / @مجدى يونس وثانيا إن شاء الله يفيدك هذا التعديل تم الاعتماد على دالة datedif الموجودة في دوال الشيت وحذف مربع النص الذي به تاريخ اليوم والاكتفاء بالمربع الأول فإذا كان فارغا يتم الحساب على تاريخ اليوم وإذا كان مكتوبا به تاريخ يتم الحساب على هذا التاريخ بالتوفيق حساب السن في النموذج.xlsb
  2. كما أشار خبيرنا أبو عيد يمكن استعمال زر tab للانتقال لعنصر التحكم التالي و استعمال shift+tab لعنصر التحكم السابق والذي يتحكم في هذا الترتيب هو خاصية TabIndex لكل عنصر على النموذج بالتوفيق
  3. يمكنك استعمال هذه المعادلات في التنسيق الشرطي مع مراعاة الفاصلة أو الفاصلة المنقوطة بالتوفيق
  4. عليكم السلام ورحمة الله وبركاته يمكنك استعمال هذه المعادلة في الخلية F12 =INT((F10-F7)/7) وفي الخلية F14 =MOD(F10-F7,7) مع مراعاة الفاصلة والفاصلة المنقوطة بالتوفيق
  5. هذا الأمر تم تناوله في المنتدى كثيرا بعنوان ترحيل من عدة شيتات إلى شيت واحد يمكنك الرجوع لهذه الموضوعات للاستفادة منها في استنتاج الكود اللازم في ملفك بالتوفيق
  6. الشكر لله الذي وفقنا لهذا جميعا بإذن الله
  7. لا يوجد دالة لهذا الغرض ولكن الدوال المعرفة في vba تؤدي الغرض بعد تمرير رقم index للشيت إلى الدالة Function ShName(n As Long) As String ShName = Sheets(n).Name End Function وطريقة استدعائها لجلب اسم الشيت صاحب الترتيب 1 مثلا =ShName(1) بالتوفيق
  8. جميعا بإذن الله
  9. السبب في البطء هو استعمال معادلة المصفوفات لأكثر من 70 مرة والصواب استعمالها مرتين فقط مع استثناء الصفوف الفارغة من المعادلة تم تعديل المعادلة في عمود البنات إلى =IFERROR(INDEX(الأسماء!$B$2:$B$1000,SMALL(IF(الأسماء!$C$2:$C$1000=$I$1,IF(الأسماء!$F$2:$F$1000="أنثى",ROW($1:$999))),ROW()-3)),"") لاحظ بداية ونهاية المدى 2:1000 يجب أن تكون متطابقة ما عدا الصف الذي يتم إرجاعه فيكون أقل ب 1 واستعمال row - 3 للترتيب مع العلم انه يجب تحديد الخلايا B4:B42 قبل لصق المعادلة في شريط الصيغة مع الضغط على. Ctrl+Shift+Enter وهكذا مع عمود البنين وهذا ملفك بعد التعديل بالتوفيق قوائم 2022 - قبل القسيم.xlsb
  10. هذا المطلوب وغيره يعتمد على مدارسة أساسيات التعامل مع الأكواد لذا يرجى البحث في المنتدى عن دورة vba لتعلم هذه الأساسيات ويمكن ذلك بتكرار السطر مع تغيير رقم 9
  11. جميعا بإذن الله تعالى
  12. لا يوجد مشكلة في هذا فقط كتابة مرجع جدول البحث من sheet1 بطريقة صحيحة يمكنك استعمال هذه المعادلة في الخلية B2 في sheet2 =IFERROR(VLOOKUP(A2,Sheet1!A:B,2,0),"") تم استعمال iferror حتى لا يظهر خطأ عند عدم وجود الاسم ومرفق ملفك بعد التعديل لمن لا يعرف كيف يضيف المعادلة في الملف الأصلي بسبب اختلاف نظام الفاصلة بين الأجهزة بالتوفيق عمل فيولوك اب علي صفحتين.xlsx
  13. آمين ولك مثل ما دعوت إن شاء اللّه
  14. هذا الكود يقوم بوضع قيمة الخلية G6 من الشيت صاحب الاسم البرمجي sheet1 في أول خلية فارغة بعد آخر خلية مكتوب فيها في العمود B في الشيت صاحب الاسم البرمجي sheet3 المطلوب غير واضح لي بصورة كافية. وإذا كنت تقصد وضع نفس القيمة في الخلية B9 فلا حاجة للمتغير M الذي يشير لأول خلية فارغة بعد المكتوب ويمكن تعديل الكود لهذا Private Sub cmdAdd_Click() Sheet3.Cells(9, "B").Value = Sheet1.Range("G6").Value End Sub لاحظ تم تغيير m إلى رقم الصف المطلوب وهو 9 بالتوفيق
  15. عليكم السلام هذا يعني أن نتيجة البحث هي الرقم صفر وهو يساوي التاريخ المذكور ويمكنك التخلص منها باستعمال دالة if =if(vlookup(lookup_value, table_array, col_index_num, [range_lookup])=0,"",vlookup(lookup_value, table_array, col_index_num, [range_lookup])) طبعا مع تغيير معاملات الدالة VLOOKUP للموجود في ملفك بالتوفيق
  16. الشكر لله الذي وفقنا
  17. يمكنك استعمال هذا الكود وهو لوضع عدد عناصر القائمة كقيمة لمربع النص textbox1 مثلا Textbox1.value = ListBox1.Items.Count بالتوفيق
  18. يمكنك استعمال دالتك وبعدها زائد واحد =DATEDIF(Start_date,End_date,"D")+1 بالتوفيق
  19. جميعا بإذن الله
  20. يمكنك تجربة هذا الكود Sub mas_twze3() Dim lr As Long, n As Long lr = Cells(Rows.Count, 1).End(3).Row n = 1 For r = 3 To lr Range("g" & r) = "مركز توزيع رقم " & n n = IIf((r - 2) Mod 12 = 0, n + 1, n) Next r MsgBox "Done by mr-mas.com" End Sub بالتوفيق
  21. حساب التأخير بمعناه الفعلي يحتاج إلى تحديد وقت الدخول لكل وظف ولأني لا أجد ذلك في ملفك فقمت بحسابه عن طريق المتبقي من ساعات العمل حتى 7 ساعات عمل والإضافي هو ما زاد عن 7 ساعات لاحظ تم تغيير تنسيق خلايا الوقت الفعلي والتاخير والاضافي بالتوفيق حساب التأخير والاضافي.xlsx
  22. بارك الله فيك ولتفادي السالب في العمود G يمكن استعمال هذه المعادلة =IF(E3-C3<0,60+E3-C3,E3-C3) وهذه في عمود H =IF(E3-C3<0,F3-D3-1,F3-D3) بالتوفيق
×
×
  • اضف...

Important Information