• 0
محمد فؤاد تركي

كيف يتم التقريب لاقرب 5

سؤال

الاخوة الزملاء

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

أريد تقريب النتائج في الاستعلام أو التقرير الي أقرب 5

مثال : - وكما تشاهدون في الصورة المرفقة

اذا كانت النتيجة عدد قريب من الرقم 30 مثلا 28 تصبح النتيجة 30 واذا كانت النتيجة اقرب من 25 مثلا 23 تصبح النتيجة 25 وهكذا

مرفق مثال

post-46243-079186400 1284718330_thumb.jp

Round.rar

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

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

6 إجابة على هذا السؤال .

  • 0

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




emad: IIf(Right([Balance];1)>=3;Left([Balance];1) & 5;[Balance]-Right([Balance];1))




0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

تفضل اخى الكريم

اليك هذه الدالة

Round.rar

2

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

أو استخدم هذه مباشرة في الاستعلام


My_Round_Field: Round(IIf(([Balance] Mod 5>=3);([Balance]-([Balance] Mod 5)+5);([Balance]-([Balance] Mod 5))))

تحياتي

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

أخواني الافاضل ونأسف علي التأخير في الرد

كفيتم ووفيتم

الحل مظبوط 100%

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

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




emad: IIf(Right([Balance];1)>=3;Left([Balance];1) & 5;[Balance]-Right([Balance];1))




في هذا المثال أنت تبحث عن الرقم الاخير وتقوم بتعديله . ستواجه مشكلة عند الارقام الصحيحه الأقل من 10 . سوف يقوم باضافة 5 وبالتالي لو كان الرقم 3 سوف يصبح 35 .

تحياتي

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

سؤال جيد أخي محمد

وحل وموفق أخي mrnooo

وإذا سمحت لي قمت بتعديل بسيييييييييط في الدالة لتصبح هكذا

Function rnd5(x As Double) As Integer
rnd5 = IIf(x - (x \ 5) * 5 >= 2.5, (x \ 5) * 5 + 5, (x \ 5) * 5)
End Function

أتمنى أن أكون قد وفقت في ذلك

وهدية مني لمن استعمل دالة ceiling & floor في إكسل ويريد استعمالها في أكسس

يمكنك استعمال هذه الدوال البسيطة

Function Ceiling(ByVal x As Double, Optional ByVal Factor As Double = 1) As Double
Ceiling = (Int(x / Factor) - (x / Factor - Int(x / Factor) > 0)) * Factor
End Function

Function Floor(ByVal x As Double, Optional ByVal Factor As Double = 1) As Double
Floor = Int(x / Factor) * Factor
End Function

ولا تنسوا أخاكم محمد صالح من صالح دعائكم

تم تعديل بواسطه mas123
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

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

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



سجل دخولك الان

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .