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

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

قام بنشر

اساتذتي الكرام 

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

ربنا مايحرمنا منكم ابداً ويزيدكم علماً كمان وكمان ويجعل عملكم خالص لوجهه تعالى ويجازيكم بعلمكم وعملكم ويضاعف اجركم ويرحم والدينا ووالديكم 

اخواني

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

 

قام بنشر

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

تفضل:

تم إضافة وحدة نمطية لحساب الأيام مع وبدون الجمعة والسبت

لم افهم ما الغرض من إضافة اسم الموظف ووو في جدول الحركات رغم ان هناك جدول لبيانات الموظف

العلاقات تم تغييرها لانها خاطئة

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

وبناء عليه يجب ان يكون الربط

عموما 

هذا ما طلبت مع بعض الإضافات

 

الانتدابات 0وخارج الدوام.rar

قام بنشر
1 ساعه مضت, AlwaZeeR said:

م إضافة وحدة نمطية لحساب الأيام مع وبدون الجمعة والسبت

WSaturdays = DateDiff("ww", StartDate, EndDate, 7)
WFridays = DateDiff("ww", StartDate, EndDate, 1)

ممكن شرح لهذين السطرين
الرقم 7 هو يوم السبت
والرقم 1 هو يوم الأحد

قام بنشر

تستطيع الاستغناء عن الأرقام باستخدام : VbFriday

وهكذا

لمعرفة ذلك ارجع بالسطر واحذف الفاصلة ثم ضعها وسوف يظهر لك الخيارات المتاحة والافتراضي يوم الاحد طبعا

 

 

قام بنشر (معدل)
WSaturdays = DateDiff("ww", StartDate, EndDate, 1)
WFridays = DateDiff("ww", StartDate, EndDate, 7)

النتيجة صحيحة: على اعتبار اننا نستثني يومين في الأسبوع ولكن:::::

انا مخطئ في وضع الأرقام :

على اعتبار ان بداية الأسبوع هي السبت 1

ونهاية الأسبوع هي الجمعة 7

:wallbash:

تم تعديل بواسطه AlwaZeeR
قام بنشر (معدل)

لك أـستاذى فضل السبق فى هذه الوظيفة
لكن أعتقد أنها تكون هكذا
 

Public Function WorkDayCalc(StartDate, EndDate) As Integer
Dim WTotalDays As Integer
Dim WSaturdays As Integer
Dim WFridays As Integer

WorkDayCalc = 0
If IsDate(StartDate) And IsDate(EndDate) Then
        If EndDate <= StartDate Then
        WorkDayCalc = 0
    Else
       '  عدد الأيام بين التاريخين
        WTotalDays = DateDiff("d", StartDate, EndDate) + 1
    ' عدد الأسابيع بداية من السبت
        WSaturdays = DateDiff("ww", StartDate, EndDate, 7)
     '  عدد الأسابيع بداية من الجمعة
        WFridays = DateDiff("ww", StartDate, EndDate, 6)
    
        
        WorkDayCalc = WTotalDays - WSaturdays - WFridays
    End If
Debug.Print WFridays & " - " & WSaturdays & "  - " & WTotalDays & " -  " & WorkDayCalc
End If

 

تم تعديل بواسطه عبد الفتاح كيرة
  • Thanks 1

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