• 0
khaledhelmy

خطأ فى جمع الأرقام العشرية + التقريب لأقرب خمس قروش

سؤال

الملف المرفق به مشكلتين فى التقرير

إذا أدخلت فى النموذج رقم الفاتورة 317 فيظهر التقرير

المشكلة الأولى : إجمالى عمود الضريبة = 2695.91 والصحيح المفروض إنه يكون  2695.92 فأنا أريد أن يكون إجمالى العمود بدون أى تقريب لانه مزود واحد قرش فكيف يتم إيقاف زيادة هذا القرش

بالمعنى المختصر أن يكون الناتج الصحيح هو 2695.92 مثلما تم جمع هذا العمود على الألة الحاسبة .

المشكلة الثانية : خانات الإجمالى أمام كل رحلة وليكن مثلا الرحلة الأولى موجود بها رقم 6589.99 وهذا الرقم صحيح فعلاً ولكن بعد إذنكم أريد تقريبه إلى أقرب خمس قروش فيصبح 6590

أسف جداً لإطالة الشرح

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

TRAVEL.rar

0

شارك هذا الرد


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

1 إجابات على هذا السؤال .

  • 0

السلام عليكم

في الإكسيل ليس هناك مشكلة يمكنك حل المشكلة من خلال دوال 

roundup التقريب لأعلى رقم صحيح او جزء من عشرة او مائة او الف

rounddown التقريب لأقل رقم صحيح او جزء من العشرة والمائة والالف 

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

Dim numvalue As Double numvalue = [Value]  'where [Value] is the field name on the form containing the value to be rounded.  'Checks If the value has anything after the decimal point 'if it does then stop the routineIf (numvalue - Int(numvalue)) = 0 ThenExit Sub   'otherwise, remove the decimal part of the value and add 1 to it to round it up.Else     numvalue = Int(numvalue) + 1     MsgBox numvalue ' display the new value          '[Value] = numvalue     ' remove the ' from in front of the [Value] to make it the rounded up number     End If

الدالة الثانية - الانسب لك بعد التعديل عليها

'Method 2 suggested by MDmackillop. Using the Round function. 'set the number variable as a double precision number.Dim numvalue As Double numvalue = [Value]  'where [Value] is the field name on the form containing the value to be rounded.  'Checks If the value has anything after the decimal point 'if it does then stop the routineIf (numvalue - Int(numvalue)) = 0 Then Exit Sub   'otherwise, add 0.05 to the value which will force the round function to round it up.Else     numvalue = Round(numvalue + 0.05)     MsgBox numvalue ' display the new value          '[Value] = numvalue     ' remove the ' from in front of the [Value] to make it the rounded up number     End If 
تم تعديل بواسطه alaaaboulela
0

شارك هذا الرد


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

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

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



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

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

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