عندى داتا جريد بجمع عمود والناتج = TEXT 13
ثم اطرح TEXT13 -TEXT16=TEXTPRICE
محتاج اجعل TEXTPRICE =0
لو TRXT16>TEXT13
ودا الكود
المشكله انه مبيستجبش علشان التعارض الموجود فى TEXTPRICE
كود :
If txt_name_item.Text = "تسديد" Then
txt_d.Text = TextBox13.Text
If TextBox16.Text >= TextBox13.Text Then
txt_price.Text = ("0")
Else
txt_price.Text = Val(TextBox13.Text) + Val(TextBox16.Text)
End If
Else
txt_d.Text = 0
End If
جربت val قبلهم وبردوا نفس المشكله
السلام عليكم ورحمة الله وبركاته
اخي الكريم انت تقول سأقوم بعملية الطرح وفي كودك توجد الاشارة (+) بدل الطرح وهنا المشكلة غيرها الى اشارة ناقص (-)
كود :
If txt_name_item.Text = "تسديد" Then
txt_d.Text = TextBox13.Text
If Val(TextBox16.Text) >= Val(TextBox13.Text) Then
txt_price.Text = 0
Else
txt_price.Text = Val(TextBox13.Text) - Val(TextBox16.Text)
End If
Else
txt_d.Text = 0
End If
شيئ آخر يمكنك استخدام التحويل Convert.ToInt32 نفس النتيجة
كود :
If txt_name_item.Text = "تسديد" Then
txt_d.Text = TextBox13.Text
If Convert.ToInt32(TextBox16.Text) >= Convert.ToInt32(TextBox13.Text) Then
txt_price.Text = 0
Else
txt_price.Text = Convert.ToInt32(TextBox13.Text) - Convert.ToInt32(TextBox16.Text)
End If
Else
txt_d.Text = 0
End If
الف شكر لحضرتك وللجميع استاذ ابراهيم
كود حضرتك جميل جدا بس للاسف نفس المشكله
اشرح لحضرتك الفكره
هو برنامج مبيعات عادى كل شهر العميل له مبلغ معلوم بخصم منه
احيانا بياخد طلبات اكتر من المبلغ اللى له فلو مثلا (تكست 1= -200) و ( تكست 2 = 150 )
فى البرنامج قولت ان لو التكست 1 مثلا اكبر من قيمه تكست2 اطرح واكتب الباقى فى تكست 3 اللى هو مربوط بجدول الاصناف
طب لو تكست 1 اصغر من قيمه التكست اجعل تكست 3 =0
وبيتم ( خصم 200- ) من ( 0 ) لتصبح( -50 )
يارب اكون قدرت اشرح ولو مقدرتش اوصلك الفكره ممكن رقم واتس لتواصل او الفيس بتاع حضرتك
هل تضع اشارة ناقص مع الرقم في التكست بوكس
اذا كان كذلك فهذا خطأ ايضا لانه دائما اصغر لان اشارته سالبة وهو اقل
بالنسبة للفيس والواتس اسف جدا ليس لاني لا اريد بل اسأل ما تريد هنافي المنتدى لتعم الفائدة على الجميع
(22-01-22, 12:09 AM)ابراهيم ايبو كتب : [ -> ]هل تضع اشارة ناقص مع الرقم في التكست بوكس
اذا كان كذلك فهذا خطأ ايضا لانه دائما اصغر لان اشارته سالبة وهو اقل
بالنسبة للفيس والواتس اسف جدا ليس لاني لا اريد بل اسأل ما تريد هنافي المنتدى لتعم الفائدة على الجميع
اشاره السالب لابد من وجودها علشان الجمع فى الداتا جريد
لو استلف 20 تروح للداتا -20
و 40تروح للداتا -40
و سدد 30 تروح للداتا -30
ويبقى التكست موجود فيه -30
لما بحذف الكود دا من الشرط الاول txt_price.Text = Val(TextBox13.Text) + Val(TextBox16.Text)
بتحصل مشكله تانيه انه مبيحققش دا ودا مطلوب بردو
(22-01-22, 12:09 AM)ابراهيم ايبو كتب : [ -> ]هل تضع اشارة ناقص مع الرقم في التكست بوكس
اذا كان كذلك فهذا خطأ ايضا لانه دائما اصغر لان اشارته سالبة وهو اقل
بالنسبة للفيس والواتس اسف جدا ليس لاني لا اريد بل اسأل ما تريد هنافي المنتدى لتعم الفائدة على الجميع
تمام ربنا يبارك فى حضرتك
تم الحل بفضل الله ثم بحضرتك
انعم الله عليك بالعلم الوفير
وضعت قبل val اشاره السالب
ودا شكل الكود بعد اخر تعديل نهائي
كود :
If txt_name_item.Text = "تسديد" And -Val(TextBox16.Text) <= Val(TextBox13.Text) Then
txt_d.Text = TextBox13.Text
txt_price.Text = Val(TextBox13.Text) + Val(TextBox16.Text)
ElseIf txt_name_item.Text = "تسديد" And -Val(TextBox16.Text) >= Val(TextBox13.Text) Then
txt_price.Text = ("0")
Else
txt_d.Text = ("0")
End If
اخي حسين
نفس الكود الماضي فقط اضرب الناتج ب -1 حتى تحصل على النتيجة بالقيمة السالبة
غير الى هذا السطر
كود :
txt_price.Text = (Convert.ToInt32(TextBox13.Text) - Convert.ToInt32(TextBox16.Text)) * -1
بالنسبة لكودك تماما انت قمت بضرب القيمة باشارة ناقص
ومعلوم في الرياضيات الناقص * الناقص = زائد
(22-01-22, 12:56 AM)ابراهيم ايبو كتب : [ -> ]اخي حسين
نفس الكود الماضي فقط اضرب الناتج ب -1 حتى تحصل على النتيجة بالقيمة السالبة
غير الى هذا السطر
كود :
txt_price.Text = (Convert.ToInt32(TextBox13.Text) - Convert.ToInt32(TextBox16.Text)) * -1
بالنسبة لكودك تماما انت قمت بضرب القيمة باشارة ناقص
ومعلوم في الرياضيات الناقص * الناقص = زائد
اسال الله ان يذيدك من علمه
تمام بس حصلت مشكله اخرى غريبه
بالنسبه للكود الاول تمام مفيش مشاكل
وكله تمام
بس ليه لما يكون فى الداتا جريد فيو صف واحد مش بيظهر اجمالى الجمع
ولو صفين بيبقا عادى وتمام
انا طولت على حضرتك انا اسف
كود :
If DataGridView1.RowCount > 1 Then
Dim d As Integer = 0
For index As Integer = 0 To DataGridView1.RowCount - 1
d += Convert.ToInt32(DataGridView1.Rows(index).Cells(6).Value)
Next
TextBox16.Text = d
Else
TextBox16.Text = ("0")
End If
TextBox11.Text = DataGridView1.Rows.Count
If TextBox10.Text <= 1 Then
Label24.Text = " دين عليه"
Else
Label24.Text = "مبلغ له"
End If
شرط عدد صفوف الداتاغرايد اكبر من الصفر وليس واحد
انت تقول عندما تكون اكبر من واحد لذلك عندما يجد صف واحد لايجمع
كود :
If DataGridView1.RowCount > 0 Then