PDA

View Full Version : یک کد چند شرطی



amir4_1363
دوشنبه 10 خرداد 1389, 11:50 صبح
سلام دوستان واساتید

من دارم رو یه برنامه کار میکنم که نیاز به یک کد چند شرطی دارم
این برنامه برای امور مشترکین آب می باشد به شرح ذیل این شرط باید در تکست باکس A که در واقع مبلغ قابل پرداخت می باشد عمل کند و اگر در کامبو باکس x که نوع کاربریست حالتهای انتخابی 1 تا چهار را داشته باشیم و تکست باکس b مصرف را نشان بدهد .
* m تعرفه می باشد

شروطی که باید در تکست باکس A اعمال شود :
1. اگر کامبو باکس x مساوی حالت 1باشد داشته باشیم :
اگر b یا همان مصرف کمتر از 8 باشد A مساوی صفر قرار بگیرد
اگر b یا همان مصرف بیشتراز 8 و کوچکتر از 30 باشد A مساوی b*m/2+1000 قرار بگیرد
اگر b یا همان مصرف بیشتراز 30و کوچکتر از 50باشد A مساوی b*m-1800+1000 قرار بگیرد
اگر b یا همان مصرف بیشتراز 50باشد A مساوی b*m+1000 قرار بگیرد.

amir4_1363
سه شنبه 11 خرداد 1389, 07:18 صبح
هیچ کسی نیست اینجا این مطلب رو حل کنه

مهدی قربانی
سه شنبه 11 خرداد 1389, 08:33 صبح
سلام
شما نمونه بذاريد تا دوستان بتونن راه حل ارائه كنن .

amir4_1363
سه شنبه 11 خرداد 1389, 12:59 عصر
اینم نمونه که البته به خاطر حجم بالاش مجبور شدم بیشترشو حذف کنم تا بتونم اینجا بزارمش

id1385
سه شنبه 11 خرداد 1389, 19:06 عصر
سلام
من نتونستم زیاد نمونه شما رو مرور کنم ببخشید، ولی تا اونجا که متوجه شدم شما از کدتون اینا رو می خواهید.
برای نوع کاربری از کد زیر استفاده کردم


Private Sub nokarbari_AfterUpdate()
Select Case (nokarbari.Value)
Case Is = 1
Me.Text13.Value = 300
Case Is = 2
Me.Text13.Value = 600
Case Is = 3
Me.Text13.Value = 44
Case Else
Exit Sub
End Select
End Sub


و برای باتن محاسبه از کد زیر


Private Sub Command15_Click()
Dim txt_Sapmle, txt_Masraf As Long
txt_Sapmle = (olgo.Value)
txt_Masraf = (masraf.Value)
'-------------------------------------'
Dim cond1, cond2, cond3, cond4 As Long
cond1 = txt_Sapmle / 3 + txt_Sapmle
cond2 = txt_Sapmle / 2 + txt_Sapmle
cond3 = txt_Sapmle * 2
'-------------------------------------'
Select Case (txt_Masraf)
Case Is = txt_Sapmle
ghabel.Value = 0
Case Is >= cond1
ghabel.Value = masraf.Value * (Text13.Value / 3) + Text13.Value
Case Is >= cond2
ghabel.Value = masraf.Value * (Text13.Value / 2) + Text13.Value
Case Is >= cond3
ghabel.Value = (Text13.Value * 3) * Text13.Value
Case Else
Exit Sub
End Select
'If Me.masraf >= olgo + (olgo / 3) Then Me.ghabel = masraf * (Text13 + (Text13 / 3))
'If Me.masraf >= olgo + (olgo / 2) Then Me.ghabel = masraf * (Text13 + (Text13 / 2))
'If Me.masraf >= olgo * 2 Then Me.ghabel = masraf * (Text13 * 3)
End Sub


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

http://www.barnamenevis.org/forum/showthread.php?t=221938 (http://www.barnamenevis.org/forum/showthread.php?t=221938)

موفق باشید.

amir4_1363
چهارشنبه 12 خرداد 1389, 08:23 صبح
این کد قبلی بود که کار نمیکنه

تازه الان من یک چیز دیگه ای که اول کار توضیح دادم میخام که با این چیزی که شما گذاشتید متقاوته اگه لطف کنید یکبار دیگه اون مطالب بالا رو بخونید ممنون میشم

amir4_1363
یک شنبه 16 خرداد 1389, 10:44 صبح
کسی نیست کمک کنه

amir4_1363
دوشنبه 17 خرداد 1389, 10:00 صبح
سلام دوستان واساتید

من دارم رو یه برنامه کار میکنم که نیاز به یک کد چند شرطی دارم
این برنامه برای امور مشترکین آب می باشد به شرح ذیل این شرط باید در تکست باکس A که در واقع مبلغ قابل پرداخت می باشد عمل کند و اگر در کامبو باکس x که نوع کاربریست حالتهای انتخابی 1 تا چهار را داشته باشیم و تکست باکس b مصرف را نشان بدهد .
* m تعرفه می باشد

شروطی که باید در تکست باکس A اعمال شود :
1. اگر کامبو باکس x مساوی حالت 1باشد داشته باشیم :
اگر b یا همان مصرف کمتر از 8 باشد A مساوی صفر قرار بگیرد
اگر b یا همان مصرف بیشتراز 8 و کوچکتر از 30 باشد A مساوی b*m/2+1000 قرار بگیرد
اگر b یا همان مصرف بیشتراز 30و کوچکتر از 50باشد A مساوی b*m-1800+1000 قرار بگیرد
اگر b یا همان مصرف بیشتراز 50باشد A مساوی b*m+1000 قرار بگیرد.

من کد بالا رو میخوام اگه دوستان لطف کنند نه چیز دیگه ای که ذهنم رو منحرف کنه دوستمون رفتن یه کد دیگه رو نوشتن من میخوام کد بالا رو یاد بگیرم یعنی چند شرطی بودن یک کد