PDA

View Full Version : سوال: محاسبه عدد در بازه تعیین شده و انجام عملیات مطابق شرط موحود در بازه عددی



djhooman
دوشنبه 17 فروردین 1394, 00:43 صبح
با سلام و عرض خسته نباشید ....

در بخشی از برنامه نیاز هستش که ما بابت مقدار فیلد عددی که داریم بیایم اون فیلد رو در بین مثلا 10 تا بازه عددی چک کنیم اگر در یکی از اون بازه ها قرار داشت بیاد شرط موجود در اون بازه رو انحام بده .

مثال :

فیلدی داریم به عنوان متراژ زمین

حالا اگر مقدار فیلد متراژ زمین = 500 شد و اگر این مقدار فیلد متراژ بین عدد 400 الی 600 بود ، بصورت خودکار مقدار 10000000 رو در تکست باکس قرار بده .
و اگر مقدار فیلد متراژ زمین = 700 شد و اگر این مقدار فیلد متراژ بین عدد 601 الی 750 بود ، بصورت خودکار مقدار 12000000 رو در تکست باکس قرار بده .
و اگر مقدار فیلد متراژ زمین = 800 شد و اگر این مقدار فیلد متراژ بین عدد 751 الی 850 بود ، بصورت خودکار مقدار 13000000 رو در تکست باکس قرار بده .
و اگر مقدار فیلد متراژ زمین = 900 شد و اگر این مقدار فیلد متراژ بین عدد 851 الی 999 بود ، بصورت خودکار مقدار 14000000 رو در تکست باکس قرار بده .

من خودم با این کد رفتم جلو اما کار نکرد و هر متراژی وارد میشد رو آخرین مقدار رو در تکست باکس درج میکرد . یعنی اگه مثلا مقدار فیلد متراژ 238 بود ، مقدار 8000000 رو انتخاب میکرد که اصلا تو اون بازه قرار نداشتش عدد من !!!!

Dim MetrazhZamin As Integer = Convert.ToInt32(ZaminMetrazhtxt.Text)

If NoeDarkhastCMB.Text = "ABCD" And MetrazhZamin > 0 And MetrazhZamin < 100 Then
FinalMablagh.Text = "2000000"
'End If

If NoeDarkhastCMB.Text = "ABCD" And MetrazhZamin > 101 And MetrazhZamin < 200 Then
FinalMablagh.Text = "4000000"
'End If

If NoeDarkhastCMB.Text = "ABCD" And MetrazhZamin > 201 And MetrazhZamin < 350 Then
FinalMablagh.Text = "6000000"
'End If

If NoeDarkhastCMB.Text = "ABCD" And MetrazhZamin > 351 And MetrazhZamin < 500 Then
FinalMablagh.Text = "8000000"
'End If



ممنون میشم راهنمایی کنید

محمد آشتیانی
سه شنبه 18 فروردین 1394, 14:14 عصر
سلام
بر اساس تکه کد شما ، به اینصورت میشه


Dim noeDarkhast As String = NoeDarkhastCMB.Text
Dim metrazhZamin As Integer = Convert.ToInt32(MetrazhTXT.Text)
Dim finalMablagh As Integer


If noeDarkhast = "ABCD" Then


Select Case metrazhZamin
Case 0 To 100
finalMablagh = 2000000
Case 101 To 200
finalMablagh = 4000000
Case 201 To 350
finalMablagh = 6000000
Case 351 To 500
finalMablagh = 8000000
End Select


End If


FinalMablaghTXT.Text = finalMablagh.ToString()



موفق باشید