Al Harthi قام بنشر يونيو 18, 2023 قام بنشر يونيو 18, 2023 الاساتذه الكرام اتمنى نعاونكم بالتعديل او ايجاد معادله اخر في الملف المرفق . المطلوب :- عدد ايام الاجازاة المرضيه للموظف في كل شهر مثال 1- اذا خرج الموظفي الى اجازه مرضيه ورجع في نفس الشهر تكون عدد الايم في العمل الخاص لذالك الشهر . 2- اذا خرج الموظف في اجازه مرضيه من تاريخ 30/04/2023 الى 02/05/2023 اجمالي الايام 3 ايام المطلوب ان تقسم هذه الايام وتكون في كل شهر شهر اربعه 1 وفي شهر 5 يومين ) اتمنى باني وفقة في الشرح ولكم مني جزيل الشكر والامتنان SL Data.xlsx
أبوأحـمـد قام بنشر يونيو 19, 2023 قام بنشر يونيو 19, 2023 تم عمل لمطلوب =IF(MONTH($G5)=MONTH($F5);IF(MONTH($F5)=MONTH(I$3);$H5;"");IF(MONTH($F5)=MONTH(I$3);IF($H5+DAY($F5)>DAY(EOMONTH($F5;0));DAY(EOMONTH($F5;0))-DAY($F5)+1;$H5);IF(MONTH($G5)=MONTH(I$3);$H5-H5;""))) SL Data.xlsx 1
Al Harthi قام بنشر يونيو 19, 2023 الكاتب قام بنشر يونيو 19, 2023 لك مني جزيل الشكر والتقدير ولكن واجهتني مشكله اذاالاجازه اكثر من شهرين المعادله لا تعمل بشكل صحبح تم تحديده باللون الاخظر SL Data (1).xlsx
AbuuAhmed قام بنشر يونيو 19, 2023 قام بنشر يونيو 19, 2023 عملت لك دالة vba لحساب أيام الإجازة لكل شهر جرب وأخبرني Option Explicit Function Between(Value As Date, MinVal As Date, MaxVal As Date) As Boolean Between = Value >= MinVal And Value <= MaxVal End Function Function GetVacDays(ByVal StartDate As Date, ByVal EndDate As Date, inMonth As Date) As Variant Dim MinVal As Date, MaxVal As Date Dim yy As Integer, mm As Byte yy = Year(inMonth) mm = Month(inMonth) MinVal = DateSerial(yy, mm + 0, 1) MaxVal = DateSerial(yy, mm + 1, 0) If Between(StartDate, MinVal, MaxVal) Or _ Between(EndDate, MinVal, MaxVal) Or _ Between(MinVal, StartDate, EndDate) Or _ Between(MaxVal, StartDate, EndDate) Then StartDate = IIf(StartDate > MinVal, StartDate, MinVal) EndDate = IIf(EndDate < MaxVal, EndDate, MaxVal) GetVacDays = CInt(EndDate - StartDate + 1) Else GetVacDays = "" End If End Function SL_Data_02.xlsm 1
أبوأحـمـد قام بنشر يونيو 19, 2023 قام بنشر يونيو 19, 2023 6 ساعات مضت, Al Harthi said: لك مني جزيل الشكر والتقدير ولكن واجهتني مشكله اذاالاجازه اكثر من شهرين المعادله لا تعمل بشكل صحبح تم تحديده باللون الاخظر SL Data (1).xlsx 17.11 kB · 2 downloads =IF(MONTH(I$4)=MONTH($F5);IF($H5+DAY($F5)>DAY(EOMONTH($F5;0));DAY(EOMONTH($F5;0))-DAY($F5)+1;$H5);IF(AND(MONTH(I$4)>MONTH($F5);MONTH(I$4)<MONTH($G5));DAY(EOMONTH(I$4;0));IF(MONTH(I$4)=MONTH($G5);DAY($G5);""))) SL Data (1).xlsx 1
Al Harthi قام بنشر يونيو 20, 2023 الكاتب قام بنشر يونيو 20, 2023 21 ساعات مضت, AbuuAhmed said: عملت لك دالة vba لحساب أيام الإجازة لكل شهر جرب وأخبرني Option Explicit Function Between(Value As Date, MinVal As Date, MaxVal As Date) As Boolean Between = Value >= MinVal And Value <= MaxVal End Function Function GetVacDays(ByVal StartDate As Date, ByVal EndDate As Date, inMonth As Date) As Variant Dim MinVal As Date, MaxVal As Date Dim yy As Integer, mm As Byte yy = Year(inMonth) mm = Month(inMonth) MinVal = DateSerial(yy, mm + 0, 1) MaxVal = DateSerial(yy, mm + 1, 0) If Between(StartDate, MinVal, MaxVal) Or _ Between(EndDate, MinVal, MaxVal) Or _ Between(MinVal, StartDate, EndDate) Or _ Between(MaxVal, StartDate, EndDate) Then StartDate = IIf(StartDate > MinVal, StartDate, MinVal) EndDate = IIf(EndDate < MaxVal, EndDate, MaxVal) GetVacDays = CInt(EndDate - StartDate + 1) Else GetVacDays = "" End If End Function SL_Data_02.xlsm 21.29 kB · 5 downloads للاسف استاذي الكريم الكود لا يعمل معي
AbuuAhmed قام بنشر يونيو 20, 2023 قام بنشر يونيو 20, 2023 (معدل) 19 دقائق مضت, Al Harthi said: للاسف استاذي الكريم الكود لا يعمل معي أنا قدمت لك كود ورفعت لك نفس المثال بعد تطبيق الدالة عليه وبه النتائج ظاهرة واضحة!! لك كل الحق أن تختار ما يناسبك أخي، أما الكود لا يعمل .. غريب "شويتين". موفق أخي. نسيت أنبهك أن تحول ملفك الأصل من xlsx إلى xlsm تم تعديل يونيو 20, 2023 بواسطه AbuuAhmed 1
أبوأحـمـد قام بنشر يونيو 21, 2023 قام بنشر يونيو 21, 2023 تم التعديل على الملف ليكون أثر مرونة واحترافية أضفت ورقة اسمها العطل بإمكانك التحكم بالأيام والعطل الرسمية التي لا تريد احتسابها ضمن الإجازة في الصورة المرفقة تم تحديد الجمعة والسبت كعطلة نهاية الأسبوع وعدد من التواريخ كإجازات رسمية بالإمكان تعديلها أو حذفها SL Data (1000).xlsx
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.