منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : مشكله مع IF الشرطيه
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
الصفحات : 1 2
عندى داتا جريد بجمع عمود والناتج = 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
PHP كود :
       If txt_name_item.Text "تسديد" Then
           txt_d
.Text TextBox13.Text
           If val
(TextBox16.Text) >= Val(TextBox13.TextThen
               txt_price
.Text = ("0")
           Else
               txt_price
.Text Val(TextBox13.Text) + Val(TextBox16.Text)
           End If
       Else
           txt_d
.Text 0
       End 
If 
حول TextBox16.Text و TextBox13.Text الى رقم في جملة 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
الصفحات : 1 2