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

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

قام بنشر

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

ارجو من اساتذتي الكرام خبراء الاكسل  مساعدتى فى تنفيذ هذا العمل

نبذه عن المطلوب

لدي شيت لحساب مرتبات العاملين ودائماا اقع فى الخطأ عند بلوغ احد الموظفين الي سن المعاش واكتشفها بعد عمل الكشوف حيث انه من الممكن ان يكون الموظف له هذا الشهر عدد ايام معينه وليس له مرتب كاملا 

ولذلك ارجو من خبراء الاكسل مساعدى لتجنب هذه الاخطاء

الملف به عمود مدون به الرقم القومي المطلوب

كود لاستخراج تاريخ الميلاد ثم اضافه 60 عام على تاريخ الميلاد ليصبح هو تاريخ البلوغ لسن المعاش بعد ذلك يتم عمل مقارنه بين تاريخ اليوم الموجود فى الخليه (C2) وتاريخ بلوغه الى سن المعاش

واذا كان يستحق صرف المرتب كاملا يترك الخليه امام اسمه فارغه واذا كان يستحق صرف عدد ايام  فى هذا الشهر يتم وضع عدد الايام التي يستحق الصرف عنها هذا الشهر فى العمود الخاص بذلك 

كما واضح فى المثال المرفق

1297877605_.PNG.df85430ffd9c8c95b723d430105bb3a2.PNG

سن المعاش.rar

ولكم مني جزيل االشكر والاحترام

قام بنشر
25 دقائق مضت, ali mohamed ali said:

هل هذا ما تقصده ؟

 

سن المعاش-1.xlsm

شكرا لاهتمامك استااذي الغالي

كدا قريب اوى من المطلوب

ولكن انا اريد ناتج الايام المتبقيه فى الشهر الحالى عند خروجه لسن المعاش 

الناتج انت عامله عباره عن عدد الايام المتبقيه للموظف فى مدة الخدمه 

المطلوب اذا كان الموظف خارج على المعاش اثناء هذا الشهر مثلا يحسب عدد الايام له ليتم عمل مرتبه عن عدد ايام اثناء الشهر وان كان يستحق صرفه كاملا لا يكتب له شئ

وان كان بالكود يكون افضل لان المعادلات بتقل الملف 

قام بنشر

لا اعلم اذا نانت طريقة استحراج التاريخ من الرقم القومي صحيحة

لكن لنفرض ذلك

الكود

Option Explicit

Sub Calcul()

   If ActiveSheet.Name <> ("salim") Then Exit Sub
    Dim N As Range
    Dim R As Double
    Dim lr%, t$, x$
    
  ' -----------------------------------------------------
  lr = Cells(Rows.Count, 2).End(3).Row
    Range("c6:c" & lr).Formula = "=0+DATE(IF(LEFT($B6,1)=""2"",MID($B6,2,2),""20""&MID($B6,2,2)),MID($B6,4,2),MID($B6,6,2))+21915"
    For Each N In Range("C6:C" & lr)
            If N <> "" Then
 t = "=DATEDIF(" & "c2" & "," & """" & N & """" & ",""ym"")"
            N.Offset(0, 1).Formula = t
            End If
  x = "=DATEDIF(" & "c2" & "," & """" & N & """" & ",""md"")"
   N.Offset(0, 2).Formula = x
    Next
    Range("c6:E" & lr).Value = Range("c6:E" & lr).Value
 End Sub

الملف مرفق

صفحة salim

Salim_Salaire.xlsm

انشئ حساب جديد او قم بتسجيل دخولك لتتمكن من اضافه تعليق جديد

يجب ان تكون عضوا لدينا لتتمكن من التعليق

انشئ حساب جديد

سجل حسابك الجديد لدينا في الموقع بمنتهي السهوله .

سجل حساب جديد

تسجيل دخول

هل تمتلك حساب بالفعل ؟ سجل دخولك من هنا.

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

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

Important Information