تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
(تم الحل) مطلوب دالة تقريب لخلايا داتا جريد ؟؟؟؟
#1
السلام عليكم ورحمة الله وبركاته

حاولت تقريب الأرقام التى بالخلايا داخل الداتا جريد عن طريق هذا الكود

كود :
CurRow.Cells("e_edafy_col").Value = Math.Round(CurRow.Cells("e_edafy_col").Value, 1

ولكن المشكلة هى فى النتائج

يقرب 2.23 إلى = 2.20 ---- المفروض هنا 2.25
يقرب 2.22 الى = 2.20 ---- هذا تمام

يقرب 2.25 الى = 2.30 ---- المفروض يتركها كما هى
يقرب 2.95 الى = 3.00 ---- المفروض يتركها كما هى

لا أدرى أين المشكلة ولكنى تعبت من كثرة البحث وعدم التوصل إلى حل .....

ارجوا مساعدتى لحل المشكلة للأهمية
}}}
تم الشكر بواسطة:
#2
على حسب ما فهمت فانك تريد التقريب بطريقة خاصة يعني بكل 5 سنتات و هذا لا تدعمه الدالة round و في هذه الحالة يتعين عليك انشاء دالة تقوم بما تريد
بالتوفيق ان شاء الله
}}}
تم الشكر بواسطة:
#3
مثل ما قال أخي أبو أسامة تركي

أبو أسامة تركي كتب :على حسب ما فهمت فانك تريد التقريب بطريقة خاصة يعني بكل 5 سنتات و هذا لا تدعمه الدالة round و في هذه الحالة يتعين عليك انشاء دالة تقوم بما تريد
بالتوفيق ان شاء الله

الأن التقريب المعتاد هو أقل من 5 ترجع 0 أما لو رقم 5 تصبح 10 كل هذا الكلام يكون للأرقام إللي بعد الفاصلة
إي إذا كان العدد
1.52 تصبح رقم 2 إلى 0 و رقم 5 إلى 10 ليصبح شكل الرقم بعد التقريب 2.00

أما لو تبي طريقة تقريب أختياريه يجب إن شاء إجراء خاص بك
Big Grin
<---------------------------------------------------------------->

[صورة مرفقة: 67og849couh458t6g.jpg]
}}}
تم الشكر بواسطة:
#4
الحمد لله

تم التوصل للحل

كود :
CurRow.Cells("e_edafy_col").Value = Math.Round(CurRow.Cells("e_edafy_col").Value / 0.05, 0) * 0.05
}}}
تم الشكر بواسطة:
#5
و الله أحسنت و بارك الله فيك
}}}
تم الشكر بواسطة:
#6
تم ايجاد الحل
[صورة مرفقة: 27_01360671789.png]
}}}
تم الشكر بواسطة:



التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم