السلام عليكــم ورحمـة الله وبركاتــه ،،
ازاى اقدر اقارن قيمتين من خلال datagrid
يعنى لو عايزاه اقارن الخليه الاولى بالخليه الثالثة لو الخليه الثالثه القيمة اكبر من الخليه الاولى يظهر رساله اعتراض
السلام عليكــم ورحمـة الله وبركاتــه ،،
ازاى اقدر اقارن قيمتين من خلال datagrid
يعنى لو عايزاه اقارن الخليه الاولى بالخليه الثالثة لو الخليه الثالثه القيمة اكبر من الخليه الاولى يظهر رساله اعتراض
هذا يعتمد على نوع قيمة الخليتين, إذا كانت لكلتاهما نفس النوع مثلا Integer أو String أو غيرها فمعاملات المقارنة العادية تكفي :
If DataGridView1.Rows(y).Cells(x).Value > DataGridView1.Rows(y1).Cells(x1).Value Then
MsgBox("...")
End Ifشكرا انتا تقصد بالمعامل y and x قيم الخليه حيث تكون y=0 تمثل row والx تمثل قيمه الخليه
قيمة الخلية داخل الخاصية Value
x هو رقم الخلية في السطر Row(y)
y هو رقم السطر
المعامل أقصد به معامل المقارنة = و < و > و <>
ماذا اذا كونت اريد مقارنه تاريخ بتاريخ هيكون نفس الكود ولا هيكون الوضع مختلف
وشكرا
بنظري الشخصي, أحسن طريقة لمقارنة خليتين :
التأكد من وجود محتوى في الخاصية Value بمقارنتها مع Nothing لكل من الخليتين
إذا كانتا تحتويان على قيمة
نعرف متغير بنوع القيمة التي ننتظر وجودها في الخلية. بالنسبة للخلية الأولى و الثانية
نحيل قيمة الخلية إلى قيمة المتغير. الخلية الأولى و الثانية
نقوم بعملية مقارنة متغيرين أو كائنين العادية.
If DataGridView1.Rows(y).Cells(x).Value <> Nothing Then If DataGridView1.Rows(y1).Cells(x1).Value <> Nothing Then Dim dt1 as DateTime = DataGridView1.Rows(y).Cells(x).Value Dim dt2 as DateTime = DataGridView1.Rows(y2).Cells(x1).Value If dt1 <> dt2 Then ' كود حالة الاختلاف End If End If End If