higo2015 قام بنشر مايو 10, 2022 قام بنشر مايو 10, 2022 سلام عليكم أنا الآن أقوم بتصميم برنامج تكليف بمهمة وفي صدد حساب كم من وجبة غذاء و كم من وجبة عشاء وكم ليلة مبيت لكي أقوم بحساب مستحقات المهمة مثلا الغذاء على 12:00 العشاء على 9:00 إذا خرج الموظف في 11/05 على الساعة 11:00 وعاد في 13/05 على الساعة 12:30 أي الموظف لديه 3 وحبات غذاء و 2 وجبات عشاء و 2 ليلة مبيت أريد طريقة للحساب بارك الله فيكم
ابوخليل قام بنشر مايو 10, 2022 قام بنشر مايو 10, 2022 السلام عليكم اعتقد لست بحاجة للبحث بين التواريخ فقط تعمل جدول تحكم للتكليف على اعتبار الايام يكون في الجدول حقول حسب المستحقات اليومية الممنوحة ( غداء / عشاء / مواصلات ... وهكذا ) ويمكن ايضا وضع المبالغ المقدرة لكل مستحق ضمن الجدول . فمثلا الموظف فلان تم تكليفه بمهمة لمدة ثلاثة ايام ، فآليا يظهر له في التقرير ( قيمة الغداء مضروب في 3 ) وهكذا بقية البنود هذا رأيي لان هذه الطريقة اكثر مرونة وقابلة للتطوير والتعديل
higo2015 قام بنشر مايو 10, 2022 الكاتب قام بنشر مايو 10, 2022 هاته الطريقة لاتعطيك الحساب الدقيق لأن العامل إذا دخل قبل 12 لايستفيد من وجبة غذاء
ابوخليل قام بنشر مايو 10, 2022 قام بنشر مايو 10, 2022 دخل فين ؟ هل تقصد تسجيل حضور ؟ اذا هكذا يمكنك استخدام قاعدة if فيما يشبه هذا : if txtTime => # 11:59:59 # then anything="غداء" else anything="" end if
higo2015 قام بنشر مايو 10, 2022 الكاتب قام بنشر مايو 10, 2022 أريد حساب كم من ساعة 12:00 مرت بين تاريخين
تمت الإجابة Moosak قام بنشر مايو 11, 2022 تمت الإجابة قام بنشر مايو 11, 2022 (معدل) أهلا بك أستاذ @higo2015 🙂 تفضل أستاذي هذه الطريقة - تحسب لك عدد وجبات الغداء التي تقع في الساعة 12 ظهر // ووجبات العشاء الساعة 9 مساءا // وعدد الليالي الساعة 12 ليلا : باستخدام الدالة التالية : Public Function LunchNDinnerNights(StartDate As Date, EndDate As Date) As String Dim SH As Integer 'Start Hour Dim TH As Integer 'Total Hours Dim x As Integer Dim H As Integer Dim L As Integer 'Lunches Dim D As Integer 'Dinners Dim N As Integer 'Nights SH = Format(StartDate, "HH") 'Debug.Print "Start Hour=" & SH TH = DateDiff("H", StartDate, EndDate) 'Debug.Print "Total Hours=" & TH For x = 0 To TH H = Format(DateAdd("h", x, StartDate), "HH") 'Debug.Print "Hour=" & H If H = 12 Then L = L + 1 If H = 21 Then D = D + 1 If H = 0 Then N = N + 1 Next x LunchNDinnerNights = L & " Lunch , " & D & " Dinner , " & N & " Night ." End Function ثم تناديها هكذا : If IsNull(Me.StartText) Or IsNull(Me.EndText) Then Exit Sub Me.ResultText = LunchNDinnerNights(Me.StartText, Me.EndText) مع مراعات أن تضع تنسيق التاريخ في المربعات بالصورة التالية : dd/mm/yyyy hh:nn:ss AM/PM جربها وأخبرني برأيك 🙂 أدركتم العشاء والمبيت.accdb تم تعديل مايو 11, 2022 بواسطه Moosak 1 1
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.