اذهب الي المحتوي
أوفيسنا

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

قام بنشر

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

اساتذتى الكرام حياكم الله

برجاء المساعدة فى تكوين معادلة لحساب قيمة التأمين لآصحاب العهد بالمدرسة لخصمها من رواتبهم ، وذلك حسب قوانين وزارة المالية ، والتى تحدد آلية الخصم ، وفيما يلى نص قانون الوزارة بهذا الشأن :

شروط وأسعار التأمين بصندوق التأمين الحكومى لضمانات أرباب العهد

يحدد سعر التأمين لكل مائة جنيه على النحو التالى :

1)      ستة قروش في السنة عن العشرة ألاف جنيه الاولى

2)      اثنى عشر قرشا في السنة عما يجاوز العشرة ألاف جنيه الاولى حتى خمسين الف جنيه

3)      اربعة وعشرون قرشا في السنة عما يجاوز خمسين الف جنيها .

ولكن بشرطين :

1)      لا يجوز في أي حال من الاحوال ان يقل الحد الادنى لقسط التأمين عن جنيه واحد ولا يزيد على مائة وأربعة وسبعون جنيها

2)      لا يجوز ان يزيد ما يستقطع من المرتب او اجر امين العهدة نظير قسط التأمين على  5ر0 %  من مرتبه الاساسي عن مدة التأمين ، فإذا تجاوز قسط التأمين هذه النسبة تتحمل الجهة التابع لها امين العهدة الفرق

كل الشكر والتقدير لأستاذنا الكبير الأستاذ / سليم على المجهود الكبير الذى بذلته حضرتك

ولكن لدى شرطان فى المعادلة مطلوب تحقيقهما :

الأول :   قسط التأمين لايقل عن 1.00 جنيه ولا يزيد عن 174.00 جنيه ، وللأسف هذا الشرط لم يتحقق فى شيت حضرتك

الثانى : إذا زاد قسط التأمين الذى تم حسابه عن ( 0.5 % * 12 * أساسى المرتب ) ، فإننا نعتبر أن قسط التأمين = ( 0.5 % * 12 * أساسى المرتب ) وليس القيمة المحسوبة من قبل

لأنى لاحظت أقساط تأمينية كبيرة جدا فى شيت حضرتك ، وأحيانا اكبر من المرتب الأساسى للموظف

وأخيرا أكرر شكرى لمجهود حضرتك

وجزاكم الله خيرا

ملف العمل.xlsx

قام بنشر

استعمل هذه الدالة

 Function how_to_pay(Myfact As Long, n1 As Long, n2 As Long, n3 As Long) As Long
''''''''''''''''''''''''''''''''''''''''''
Select Case Myfact
        Case Is <= 10000
          How_Many = Myfact * n1 ' a
        Case Is <= 500000
          How_Many = (10000 * n1) + (Myfact - 10000) * n2 '              a+b
        Case Is > 500
     How_Many = (10000 * n1) + (50000 * n2) + (Myfact - 50000) * n3  'a+c+d+e
  End Select
 
 how_to_pay = How_Many
''''''''''''''''''''''''''''''''''''''''
 End Function

الملف مرفق للتوضيح

 

Facture.xlsm

  • Like 1
  • تمت الإجابة
قام بنشر

تم التعديل على الماكرو

 Function how_to_pay(Myfact As Long, n1 As Long, n2 As Long, n3 As Long) As Long

Select Case Myfact
        Case Is <= 10000
          How_Many = Myfact * n1 ' a
        Case Is <= 500000
          How_Many = (10000 * n1) + (Myfact - 10000) * n2 '              a+b
        Case Is > 500
     How_Many = (10000 * n1) + (50000 * n2) + (Myfact - 50000) * n3  'a+c+d+e
  End Select
 
 how_to_pay = How_Many

 End Function
 '=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Sub verifay_count()
Dim M As Long, i%, X As Long
With Sheets("Sheet1").Range("C3", Range("C2").End(4))
    For i = 1 To .Rows.Count
       M = how_to_pay(.Cells(i), Range("k2"), Range("L2"), Range("M2")) / 1000
     Select Case M
        Case Is < 100: X = 100
        Case Is > .Cells(i).Offset(, 1) * 12 * 0.05
          Select Case .Cells(i).Offset(, 1) * 12 * 0.05
            Case Is < M: X = .Cells(i).Offset(, 1) * 12 * 0.05
            Case Else: X = M
           End Select
          M = .Cells(i).Offset(, 1) * 12 * 0.05

     End Select
       .Cells(i).Offset(, 2) = X
    Next

End With
End Sub

الملف مرفق

Facture_1.xlsm

  • Like 2
قام بنشر

كل الشكر والتقدير لحضرتك أستاذى الفاضل الأستاذ / سليم حاصبيا

أستاذى الفاضل

أرى ان حضرتك تحب ات تعمل الحسابات بالأكواد

فهل يمكن عمل معادلة لهذه العملية الحسابية

فمعذرة أعتقد أن المعادلة اسهل فى التعامل من الكود من وجهة نظرى على حجم معلوماتى المتواضعة

فما هو رأى حضرتك

وشكرا

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

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

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

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

سجل حساب جديد

تسجيل دخول

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

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

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

Important Information