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

محتاج دالة عمل احصائية سنوية لجميع الشهور للموظفيبن من حضور وغياب


الردود الموصى بها

السلام عليكم ورحمة الله وبركاتة  

اسعد الله مساكم بالخير والبركة 

طلبي اليوم من الاخوان الاعزاء على قلبي هوة دالة عمل عمل احصائية سنوية لجميع الموظفين موضح في شيت الاحصائية السنوية  برنامج متابعة حضور وغياب الافراد والاجازات3.rar

رابط هذا التعليق
شارك

أخي العزيز / صالح أحمد المريسي 

وبعد اذن أستاذنا القدير / ياسر خليل حفظه الله 

وحسب ما فهمت من الملف 

ضع هذه المعادلة في الخلية ( F6 ) ثم قم بنسخ الخلية وقم بلصقها في بقية خلايا الجدول 

=IFERROR(VLOOKUP($B$6;INDIRECT(CONCATENATE($E6;"!";"$A:$AT"));COLUMN(AH1);0);"")

إن شاء الله أكون وفقت في مطلوبك

والعفو 

برنامج متابعة حضور وغياب الافراد والاجازات3.rar

رابط هذا التعليق
شارك

أخي الحبيب الشهابي

لا أعتقد أن هذا هو المطلوب

قم بالإطلاع على المرفق التالي لعل الأمور تكون أوضح

Public Function GetItemTestCount(ItemTest As String, Criteria As String) As Long
    Dim Sht As Excel.Worksheet
    Dim Arr, lRow
    Dim Tally As Long, Count As Long
    Arr = Array("يناير", "فبراير", "مارس", "أبريل", "مايو", "يونيو", "يوليو", "أغسطس", "سبتمبر", "أكتوبر", "نوفمبر", "ديسمبر")
    Application.Volatile
    Tally = 0
    For Each Sht In ThisWorkbook.Worksheets
        If UBound(Filter(Arr, Sht.Name)) > -1 Then
            lRow = Application.WorksheetFunction.Match(ItemTest, Sht.Range("'" & Sht.Name & "'!$A$5:$A$500"), 0) + 4
            If Criteria <> vbNullString Then Count = Application.WorksheetFunction.CountIf(Sht.Range("C" & lRow & ":" & "AG" & lRow), Criteria)
            Tally = Tally + Count
        End If
    Next
    GetItemTestCount = Tally
End Function

تقبل تحياتي

 

Ehsaa UDF Function.rar

تم تعديل بواسطه ياسر خليل أبو البراء
  • Like 1
رابط هذا التعليق
شارك

السلام عليكم ورحمة الله

أخي الكريم صالح، بوساطة معادلة طويلة بعض الشيء (لم أجد بدّا من ذلك) تم حل المشكل... مع ملاحظة أنه يمكن فعل ذلك بواسطة كود (وهو أسرع) يقوم بالعملية نفسها (وسأتركه للإخوة الكرام)...

بن علية

برنامج متابعة حضور وغياب الافراد والاجازات3.rar

رابط هذا التعليق
شارك

فعلا أخي ياسر لم أفهم المطلوب وذبك بسبب عدم اطلاعي على ورقة (احصائية سنوية لجميع الموظفين)

ولم رأيت إجاباتكم وإجابات أستاذنا الكبير بن علية حاجي حفظه وحفظكم أجمعين 

قمت بعمب معادلة طويلة بدل دالة ( OFFSET ) التي استعملها أستاذنا بن علية حاجي الذي ترى في معادلاته ابتكارات وإبداعات جديدة دائما نستفيد منها مثل المعادلة التي عملها 

بارك الله فيك أستاذنا بن علية وزادك علما ورفعة 

فعملت المعادلة بدالة (INDEX) لتؤدي نفس الغرض بس أنها أطول من معادلة الأستاذ بن علية التي هي أفضل من غير شك من معادلتنا فيفضل استخدام معادلة الأستاذ بن علية 

وإنما هذه المعادلة لإثراء الموضوع فقط 

=SUM(INDEX(يناير!$A$5:$AT$500;MATCH($A3;يناير!$A$5:$A$500;0);COLUMN(AH2));INDEX(فبراير!$A$5:$AT$500;MATCH($A3;فبراير!$A$5:$A$500;0);COLUMN(AH2));INDEX(مارس!$A$5:$AT$500;MATCH($A3;مارس!$A$5:$A$500;0);COLUMN(AH2));INDEX(أبريل!$A$5:$AT$500;MATCH($A3;أبريل!$A$5:$A$500;0);COLUMN(AH2));INDEX(مايو!$A$5:$AT$500;MATCH($A3;مايو!$A$5:$A$500;0);COLUMN(AH2));INDEX(يونيو!$A$5:$AT$500;MATCH($A3;يونيو!$A$5:$A$500;0);COLUMN(AH2));INDEX(يوليو!$A$5:$AT$500;MATCH($A3;يوليو!$A$5:$A$500;0);COLUMN(AH2));INDEX(أغسطس!$A$5:$AT$500;MATCH($A3;أغسطس!$A$5:$A$500;0);COLUMN(AH2));INDEX(سبتمبر!$A$5:$AT$500;MATCH($A3;سبتمبر!$A$5:$A$500;0);COLUMN(AH2));INDEX(أكتوبر!$A$5:$AT$500;MATCH($A3;أكتوبر!$A$5:$A$500;0);COLUMN(AH2));INDEX(نوفمبر!$A$5:$AT$500;MATCH($A3;نوفمبر!$A$5:$A$500;0);COLUMN(AH2));INDEX(ديسمبر!$A$5:$AT$500;MATCH($A3;ديسمبر!$A$5:$A$500;0);COLUMN(AH2)))

نعم لقد قمت بتحويل معادلة أستاذنا بن علية إلى قيمة من خلال كود يحذف المعادلة بعد أن تقوم بعملها ويضع بدلا منها القيمة مما يجعل الملف أخف حسب ما أشار أستاذنا بن علية جزاه الله خير 

تحياتي وتقديري للجميع 

برنامج متابعة حضور وغياب الافراد والاجازات3.rar

رابط هذا التعليق
شارك

السلام عليكم

فليسمح لى اساتذتى بالمشاركة

نظراً لتساوى ترتيب الاعمدة الخاصة بسبب الغياب فى كل صفحات العمل وكذلك صفحة الاحصائية السنوية

لذلك  يمكننا استخدام معادلة اكثر اختصاراً كهذه

=SUMPRODUCT(SUMIF(INDIRECT("'"&$Z$1:$Z$12&"'!A5:A500");$A2;OFFSET(INDIRECT("'"&$Z$1:$Z$12&"'!AG5:AG500");;COLUMN(A1);;)))

المرفق

 برنامج متابعة حضور وغياب الافراد والاجازات3.rar

تم تعديل بواسطه خالد الرشيدى
  • Like 4
رابط هذا التعليق
شارك

السلام عليكم 

 يمكنك استخدام المعادله التاليه

=SUM(SUMIFS(ديسمبر!AH:AH,ديسمبر!$A:$A,'احصائية سنوية لجميع الموظفين'!$A3),SUMIFS(نوفمبر!AH:AH,نوفمبر!$A:$A,'احصائية سنوية لجميع الموظفين'!$A3),,,,,,)

 

رابط هذا التعليق
شارك

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information