Al Harthi قام بنشر يونيو 18, 2023 قام بنشر يونيو 18, 2023 الاساتذه الكرام اتمنى نعاونكم بالتعديل او ايجاد معادله اخر في الملف المرفق . المطلوب :- عدد ايام الاجازاة المرضيه للموظف في كل شهر مثال 1- اذا خرج الموظفي الى اجازه مرضيه ورجع في نفس الشهر تكون عدد الايم في العمل الخاص لذالك الشهر . 2- اذا خرج الموظف في اجازه مرضيه من تاريخ 30/04/2023 الى 02/05/2023 اجمالي الايام 3 ايام المطلوب ان تقسم هذه الايام وتكون في كل شهر شهر اربعه 1 وفي شهر 5 يومين ) اتمنى باني وفقة في الشرح ولكم مني جزيل الشكر والامتنان SL Data.xlsxFetching info...
أبوأحـمـد قام بنشر يونيو 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.xlsxFetching info... 1
Al Harthi قام بنشر يونيو 19, 2023 الكاتب قام بنشر يونيو 19, 2023 لك مني جزيل الشكر والتقدير ولكن واجهتني مشكله اذاالاجازه اكثر من شهرين المعادله لا تعمل بشكل صحبح تم تحديده باللون الاخظر SL Data (1).xlsxFetching info...
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.xlsmFetching info... 1
أبوأحـمـد قام بنشر يونيو 19, 2023 قام بنشر يونيو 19, 2023 في 19/6/2023 at 15:02, Al Harthi said: لك مني جزيل الشكر والتقدير ولكن واجهتني مشكله اذاالاجازه اكثر من شهرين المعادله لا تعمل بشكل صحبح تم تحديده باللون الاخظر SL Data (1).xlsx 17.11 kB · 2 downloads Expand =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).xlsxFetching info... 1
Al Harthi قام بنشر يونيو 20, 2023 الكاتب قام بنشر يونيو 20, 2023 في 19/6/2023 at 20:50, 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 Expand للاسف استاذي الكريم الكود لا يعمل معي
AbuuAhmed قام بنشر يونيو 20, 2023 قام بنشر يونيو 20, 2023 (معدل) في 20/6/2023 at 18:24, Al Harthi said: للاسف استاذي الكريم الكود لا يعمل معي Expand أنا قدمت لك كود ورفعت لك نفس المثال بعد تطبيق الدالة عليه وبه النتائج ظاهرة واضحة!! لك كل الحق أن تختار ما يناسبك أخي، أما الكود لا يعمل .. غريب "شويتين". موفق أخي. نسيت أنبهك أن تحول ملفك الأصل من xlsx إلى xlsm تم تعديل يونيو 20, 2023 بواسطه AbuuAhmed 1
أبوأحـمـد قام بنشر يونيو 21, 2023 قام بنشر يونيو 21, 2023 تم التعديل على الملف ليكون أثر مرونة واحترافية أضفت ورقة اسمها العطل بإمكانك التحكم بالأيام والعطل الرسمية التي لا تريد احتسابها ضمن الإجازة في الصورة المرفقة تم تحديد الجمعة والسبت كعطلة نهاية الأسبوع وعدد من التواريخ كإجازات رسمية بالإمكان تعديلها أو حذفها SL Data (1000).xlsxFetching info...
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.