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

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

قام بنشر

السلام عليكم 

 

اريد الاستفسار عن معادلة Round up ما بين الاكسيل و الاكسيس حيث ان المعادلة تعطي نتائج مختلفة في التقريب في المثال التالى 

 

في الاكسيل رقم 999.34 يعطي ناتج تقريبي 1000 عن طريق المعادلة التالية 

=ROUNDUP(N1,0)

في الاكسيس رقم 999.34 يعطي ناتج تقريبي 999 عن طريق المعادلة التالية 

Ex: Round([Average],0)

فهل من ايضاح كيفية عمل معادلة Round up في الاكسيس لتصل لنفس نتيجة الاكسيل 

قام بنشر
10 ساعات مضت, karrar sabry said:

و عليكم السلام ... 

 

شكرا اخي الكريم على المساعدة بس هل لى من سؤال 

 

هل دالة Roundup لابد من ان تصاحبها Macro حتى تعمل الدالة لاني حاولت ان اصنع الدالة بدون Macro بس دائما تعطي خطا 

قام بنشر

و اذا كان لابد من استخدام ماكرو فهل من شرح لهذا الكود

 


Public Function RoundDown(FullNum As Variant, Plac As Integer) As Variant
If IsNull(FullNum) Or FullNum = "" Then Exit Function
Dim AfterPoint As Variant
Dim Formatation As String
AfterPoint = Mid(FullNum, InStr(FullNum, ".") + 1, Plac)

If Fix(FullNum) = FullNum Then
NewNum = FullNum
Else
If Plac = 0 Then
NewNum = Fix(FullNum) + 1
Else
NewNum = Fix(FullNum) & "." & AfterPoint
End If
End If
Dim i
For i = 1 To IIf(Plac > 0, Plac, 1)
Formatation = Formatation & 0
Next i
RoundDown = Format(Val(NewNum), "0." & Formatation)

End Function

 

قام بنشر
الان, ابوخليل said:

يوجد بديل  استخدم هذا التعبير :


EX : -Int(-[Average])

 

بعد اذن معلمى القدير واستاذى الجليل  ابوخليل :fff:
ارد على اخى الكريم Ali Tawfeek

الان, Ali Tawfeek said:

شكرا اخي ابو خليل 

هل لي من توضيح ما هي دالة int حتي تعم الاستفادة و التجربة 

 

تقريب الكسور لاقرب رقم صحيح.rar

قام بنشر
17 ساعات مضت, Ali Tawfeek said:

شكرا اخي ابو خليل 

هل لي من توضيح ما هي دالة int حتي تعم الاستفادة و التجربة 

هذا يعني انك لن تجرب حتى اشرح لك

يمكن انها لا تعمل

جرب اول .. فان عملت وقامت مقام  RoundUp   بكذا ينشط اخوك للشرح

  • Thanks 1
قام بنشر
في 3/15/2016 at 00:12, Ali Tawfeek said:

و اذا كان لابد من استخدام ماكرو فهل من شرح لهذا الكود

 



Public Function RoundDown(FullNum As Variant, Plac As Integer) As Variant
If IsNull(FullNum) Or FullNum = "" Then Exit Function
Dim AfterPoint As Variant
Dim Formatation As String
AfterPoint = Mid(FullNum, InStr(FullNum, ".") + 1, Plac)

If Fix(FullNum) = FullNum Then
NewNum = FullNum
Else
If Plac = 0 Then
NewNum = Fix(FullNum) + 1
Else
NewNum = Fix(FullNum) & "." & AfterPoint
End If
End If
Dim i
For i = 1 To IIf(Plac > 0, Plac, 1)
Formatation = Formatation & 0
Next i
RoundDown = Format(Val(NewNum), "0." & Formatation)

End Function

 

عزيزي

ضع استفسارك في موضوع مصدر الكود !

وللعلم كتبت المعادلة السابقة كبديلا لدالة الاكسل والذي تقبل التحكم في منازل التقريب ! وليس تقريب لاعلى عدد صحيح !

بالتوفيق

  • 2 years later...

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

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

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

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

سجل حساب جديد

تسجيل دخول

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

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

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

Important Information