Solved

Search

Posted on 2000-05-04
4
155 Views
Last Modified: 2010-05-02
Hi, I want to search a database.  I want to be able to search by either age or eye color.  I have two radio buttons.  One called radEye and one called radAge.  I have a text box where I will input what I am searching for called txtSearch.  And, I have a command button called cmdSearch to press when I am ready to search.  Any help or creative ideas would be much appreciated.
0
Comment
Question by:zippy221
  • 3
4 Comments
 

Expert Comment

by:AZWolf7
ID: 2778766
OK, need more info on this, but here's the gist of it:

Dim sSQL as string

sSQL = "select * from Mytable where "

If radEye then
     sSQL = sSQL & " eyecolor = '" & txtSearch & "'"
Else
     sSQL = sSQL & " age = " & CInt(txtSearch)
End If

This code made the following assumptions:
the table is called Mytable
the fields are called eyecolor and age respectively
eyecolor is a string
age is an integer
they have selected one of the values radEye or radAge
if they selected radAge, they entered a valid number



0
 

Expert Comment

by:AZWolf7
ID: 2778771
Ooops, it also assumes you can run this dynamically built SQL statement. The theory is create the SQL statement, and execute it to get your recordset you want.

0
 

Author Comment

by:zippy221
ID: 2781298
Okay here is more info.  There are 3 text boxes that display the information from the database.  These text boxes are: txtEyeColor, txtAge, txtName.  The database is called dbStudy.  The table is called tblColor.  I will need to create some sort of search where the user can search by either Eye Color or Age.  
0
 

Accepted Solution

by:
AZWolf7 earned 50 total points
ID: 2782132
'I will assume you are using ADO. this pretty much writes your whole routine for you, but you'llhave a few small holes to fill like the connection string, or converting to the data access type you are using.

Dim sSQL as string
Dim objRS as ADODB.Recordset
Dim objConn as ADODB.Connection

Set objConn = New ADODB.Connection
With objConn
    .ConnectionString = 'insert your connection string here
    .Open
End With
Set objRS = New ADODB.Recordset

sSQL = "select * from Mytable where " 

If radEye then
     sSQL = sSQL & " eyecolor = '" & txtSearch & "'"
Else
     sSQL = sSQL & " age = " & CInt(txtSearch)
End If

objRS.ActiveCOnnection = objConn
objRS.Open sSQL

'Check to see if you got any records
If not objRS.EOF and Not objRS.BOF then
    txtEyeColor = Trim(objRS!eyecolor & "")
    If not isnull(objRS!Age) then
        txtAge = objRS!Age
    Else
        txtAge = 0
    End If
    txtName = Trim(objRS!name & "")
Else
    txtEyeColor = ""
    txtAge = ""
    txtName = "Not Found"
end If

Set objRS = Nothing
Set objConn = Nothing

0

Featured Post

Master Your Team's Linux and Cloud Stack!

The average business loses $13.5M per year to ineffective training (per 1,000 employees). Keep ahead of the competition and combine in-person quality with online cost and flexibility by training with Linux Academy.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Most everyone who has done any programming in VB6 knows that you can do something in code like Debug.Print MyVar and that when the program runs from the IDE, the value of MyVar will be displayed in the Immediate Window. Less well known is Debug.Asse…
When designing a form there are several BorderStyles to choose from, all of which can be classified as either 'Fixed' or 'Sizable' and I'd guess that 'Fixed Single' or one of the other fixed types is the most popular choice. I assume it's the most p…
Get people started with the utilization of class modules. Class modules can be a powerful tool in Microsoft Access. They allow you to create self-contained objects that encapsulate functionality. They can easily hide the complexity of a process from…
This lesson covers basic error handling code in Microsoft Excel using VBA. This is the first lesson in a 3-part series that uses code to loop through an Excel spreadsheet in VBA and then fix errors, taking advantage of error handling code. This l…

832 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question