تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
مشكلة في عملية الجمع
#1
عندي عمود في الداتا جريد طبعا من نوع عملة وفيه اسعار سلع مثلا :

10.55
8.60
5.05

استخدم كود لجمع قيمة العمود ثم اظهارها في التكست بوكس هذا الكود الي استخدمه

 Dim sum As Integer = 0
        For i As Integer = 0 To dgv_data.Rows.Count - 1
            sum += Convert.ToInt32(dgv_data.Rows(i).Cells(6).Value)
        Next
        T2.Text = sum.ToString()
لاكن المشكلة ان عملية الجمع تتم بدون الكسور يعني الهلالات يعني مثلا

10.50 + 2 = 13.50
يعطيني 13 فقط واذا كانت اكثر من 50 هللة يكمل عليها واحد يعني 

10.80 + 2 = 12.80
يعطيني 13
الرد }}}
تم الشكر بواسطة:
#2
السلام عليكم

جرب تغير نوع المتغير  من  

استبدل  

 Dim sum As Integer = 0

ب
PHP كود :
Dim sum As Double 
الرد }}}
تم الشكر بواسطة: عبد العزيز البسكري
#3
نفس المشكلة
الرد }}}
تم الشكر بواسطة:
#4
Convert.ToDouble

استبدل هذه
Convert.ToInt32
الرد }}}
تم الشكر بواسطة: VB.NET , عبد العزيز البسكري
#5
الله يعطبك العافية مشكور
الرد }}}
تم الشكر بواسطة: sendbad100
#6
(26-11-17, 02:04 PM)VB.NET كتب : عندي عمود في الداتا جريد طبعا من نوع عملة وفيه اسعار سلع مثلا :

10.55
8.60
5.05

استخدم كود لجمع قيمة العمود ثم اظهارها في التكست بوكس هذا الكود الي استخدمه

 Dim sum As Integer = 0
        For i As Integer = 0 To dgv_data.Rows.Count - 1
            sum += Convert.ToInt32(dgv_data.Rows(i).Cells(6).Value)
        Next
        T2.Text = sum.ToString()
لاكن المشكلة ان عملية الجمع تتم بدون الكسور يعني الهلالات يعني مثلا

10.50 + 2 = 13.50
يعطيني 13 فقط واذا كانت اكثر من 50 هللة يكمل عليها واحد يعني 

10.80 + 2 = 12.80
يعطيني 13

جرب هذا السطر :


كود :
T2.Text = (From row In dgv_data.Rows Select CDbl(row.Cells(6).Value)).Sum()
الرد }}}
تم الشكر بواسطة: عبد العزيز البسكري , VB.NET



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


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