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

أ / محمد صالح

أوفيسنا
  • Posts

    4,431
  • تاريخ الانضمام

  • Days Won

    191

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

  1. أعتقد أنها ممكنة بدالة lookup وليس vlookup يمكنك تجربة هذه المعادلة =LOOKUP(2,1/($A$2:$A$12="value"),$B$2:$B$12) حيث يتم التوصل لآخر نتيجة في العمود B أمام القيم في العمود A والتي تساوي value ويمكن استعمال مرجع الخلية التي بها القيمة المراد البحث عنها بدلا من كلمة value بالتوفيق
  2. يمكنك استعمال هذه المعادلة =LEFT(B1,4)-LEFT(A1,4)+1 حيث A1 و B1 بهما العامين من الأقدم للأحدث بالتوفيق
  3. جميعا بإذن الله يبدو أن حضرتك بعد ثلاثة أشهر من نشر الحل لم تقرأ هذه الملاحظة التي تجيب عن استفسارك الثاني بالتوفيق
  4. المشكلة في إعدادات تنسيق التاريخ والمنطقة في لوحة التحكم يفضل اختيار منطقة عربية يكون تنسيق التاريخ بها اليوم/الشهر/السنة وهذا رابط الدعم في ميكروسوفت
  5. إن شاء اللّه يقوم هذا الكود بالغرض في حدث عند تنشيط الصفحة Private Sub Worksheet_Activate() Dim lr As Long, r As Long lr = Sheet1.Cells(Rows.Count, 2).End(3).Row For r = 4 To lr If Range("c" & r) <= Date And Range("d" & r) <> "" Then Range("e" & r) = Range("d" & r) Range("d" & r).ClearContents End If Next r End Sub كلك يمين على اسم الشيت ثم view code ثم لصق هذا الكود وحفظ الملف بامتداد xlsb من تبويب file ثم save as بالتوفيق
  6. بإذن الله يكون هذا الكود هو المطلوب تم استعمال dateadd لاضافة الايام والشهور والاعوام لتاريخ معين واستعمال دالة datedif لحساب الفرق بين تاريخين Private Sub CommandButton1_Click() TextBox2 = DateAdd("d", Val(TextBox6), TextBox1) TextBox2 = DateAdd("m", Val(TextBox5), TextBox2) TextBox2 = DateAdd("yyyy", Val(TextBox4), TextBox2) TextBox3 = DateAdd("m", (Val(TextBox4) * -3), TextBox2) TextBox7 = Evaluate("DATEDIF(" & CDbl(Date) & "," & CDbl(CDate(TextBox3)) & ", ""md"")") TextBox9 = Evaluate("DATEDIF(" & CDbl(Date) & "," & CDbl(CDate(TextBox3)) & ", ""ym"")") TextBox8 = Evaluate("DATEDIF(" & CDbl(Date) & "," & CDbl(CDate(TextBox3)) & ", ""y"")") MsgBox "Done by mr-mas.com" End Sub Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean) TextBox1.Text = Format(TextBox1, "yyyy/mm/dd") End Sub Private Sub TextBox2_Change() TextBox2.Text = Format(TextBox2, "yyyy/mm/dd") End Sub Private Sub TextBox3_Change() TextBox3.Text = Format(TextBox3, "yyyy/mm/dd") End Sub بالتوفيق
  7. يمكنك استعمال هذه المعادلة =NETWORKDAYS.INTL(A2,EOMONTH(A2,0),"1111011") مع وضع تاريخ بداية الشهر المطلوب في الخلية A2 بالتوفيق
  8. إن شاء الله يكون المطلوب مع ملاحظة تغيير رقم العمود إلى معادلة حتى يتم سحب المعادلة أفقيا ورأسيا بالتوفيق جداول المدرسين.xlsm
  9. تمت معالجة الأمر قبل ذلك كثيرا إن شاء اللّه تفيدك هذه النتائج بالتوفيق
  10. ممكن جدا المهم استعمال الكائن الذي يشير للشيت في مكانه الصحيح وتعديل المعادلة بما يتوافق مع الشيتين
  11. إن شاء اللّه تفي هذه المعادلة بالغرض =EDATE(A5,3) مع تنسيق الخلية بأي تنسيق تاريخ مطلوب ومراعاة الفاصلة أو الفاصلة المنقوطة بالتوفيق
  12. يمكنك استعمال هذه المعادلة في الخلية C2 مع نسخ المعادلة لأسفل =MAXIFS(ورقة1!C:C,ورقة1!B:B,B2,ورقة1!A:A,">="&A2,ورقة1!A:A,"<="&EOMONTH(A2,0)) بالتوفيق
  13. أولا أشكر صاحب الملف الأصلي أ / @مجدى يونس وثانيا إن شاء الله يفيدك هذا التعديل تم الاعتماد على دالة datedif الموجودة في دوال الشيت وحذف مربع النص الذي به تاريخ اليوم والاكتفاء بالمربع الأول فإذا كان فارغا يتم الحساب على تاريخ اليوم وإذا كان مكتوبا به تاريخ يتم الحساب على هذا التاريخ بالتوفيق حساب السن في النموذج.xlsb
  14. كما أشار خبيرنا أبو عيد يمكن استعمال زر tab للانتقال لعنصر التحكم التالي و استعمال shift+tab لعنصر التحكم السابق والذي يتحكم في هذا الترتيب هو خاصية TabIndex لكل عنصر على النموذج بالتوفيق
  15. يمكنك استعمال هذه المعادلات في التنسيق الشرطي مع مراعاة الفاصلة أو الفاصلة المنقوطة بالتوفيق
  16. عليكم السلام ورحمة الله وبركاته يمكنك استعمال هذه المعادلة في الخلية F12 =INT((F10-F7)/7) وفي الخلية F14 =MOD(F10-F7,7) مع مراعاة الفاصلة والفاصلة المنقوطة بالتوفيق
  17. هذا الأمر تم تناوله في المنتدى كثيرا بعنوان ترحيل من عدة شيتات إلى شيت واحد يمكنك الرجوع لهذه الموضوعات للاستفادة منها في استنتاج الكود اللازم في ملفك بالتوفيق
  18. لا يوجد دالة لهذا الغرض ولكن الدوال المعرفة في vba تؤدي الغرض بعد تمرير رقم index للشيت إلى الدالة Function ShName(n As Long) As String ShName = Sheets(n).Name End Function وطريقة استدعائها لجلب اسم الشيت صاحب الترتيب 1 مثلا =ShName(1) بالتوفيق
×
×
  • اضف...

Important Information