ورود

View Full Version : سوال: برگردوندن آی دی یک گزینه خاص تو کومبو باکس



mohsen1150
سه شنبه 15 آذر 1390, 00:01 صبح
سلام به همه دوستان
من می خوام یک جدولم رو به یک کومبو باکس بایند کنم ( بانکم با access هست)
حالا من می خوام زمانی که کاربر یک گزینه رو انتخاب کرد به جای متن گزینه شماره آی دی اون گزینه رو بهم بده ( نمی خوام دوباره با استفاده از گزینه آی دی رو بدست بیارم )

امیدوارم منظورم رو رسونده باشم

sehm67
چهارشنبه 16 آذر 1390, 13:06 عصر
سلام به همه دوستان
من می خوام یک جدولم رو به یک کومبو باکس بایند کنم ( بانکم با access هست)
حالا من می خوام زمانی که کاربر یک گزینه رو انتخاب کرد به جای متن گزینه شماره آی دی اون گزینه رو بهم بده ( نمی خوام دوباره با استفاده از گزینه آی دی رو بدست بیارم )

امیدوارم منظورم رو رسونده باشم

یک ComboBox به پروژه اضافه نمایید و در قسمت form_load برنامه این کد رو قرار دهید.


Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\Bank.mdb;Jet OLEDB:Database Password=;"
Adodc1.RecordSource = "SELECT * FROM Tabel1"
Adodc1.Refresh
For i = 0 To Adodc1.Recordset.RecordCount
If Adodc1.Recordset.EOF = True Then Exit Sub
Combo1.AddItem Adodc1.Recordset.Fields("Name")
Adodc1.Recordset.MoveNext
Next i


یک Command و TextBox به برنامه اضافه کنید و کد زیر را وارد کنید.



Adodc1.RecordSource = "SELECT * FROM Tabel1 WHERE Name='" & Combo1.Text & "'"
Adodc1.Refresh
If UCase(Adodc1.Recordset.Fields("Password")) = UCase(Text1) Then
MsgBox "Yes"
End If


توجه داشته باشید که فیلد نام ها نباید تکراری باشد برای جلو گیری از وارد نمودن از تکرار این کد را وارد نمایید :



Adodc1.RecordSource = "SELECT * FROM Tabel1 WHERE Name='" & Combo1.Text & "'"
Adodc1.Refresh
If Adodc1.Recordset.RecordCount > 0 Then MsgBox "این مورد تکراری است", vbCritical, "": Exit Sub