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

دالة RoundUp


أبو هادي

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

السلام عليك

دالة Round في الأكسس بها بعض المشكلات لفقدها جزء من دقة الأرقام المطلوب تقريبها مما يؤثر على نتائج تقريبها وقد عملت الدالة التالية لتحل محل الدالة الأصل وهي تعمل تماما كما الأصل ، آمل أن ينتفع بها .

Function RoundUp(ByVal Expression, _
        Optional ByVal NumDecimalPlaces = 0) As Double
  Dim Rnd
  
  On Error Resume Next
  
  If NumDecimalPlaces < 0 Then NumDecimalPlaces = 0
  If NumDecimalPlaces > 22 Then NumDecimalPlaces = 22
  
  Rnd = 0
  If Expression <> 0 Then
    Rnd = Val("0." & String(NumDecimalPlaces + 1, "0") & "1")
  End If
  
  RoundUp = Round(Expression + IIf(Expression > 0, Rnd, -Rnd), _
                  NumDecimalPlaces)
End Function

تحياتي .

تم تعديل بواسطه أبو هادي
رابط هذا التعليق
شارك

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



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

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

Important Information