Solved

Fill a Combo Box with values from a table

Posted on 2004-09-06
13
4,186 Views
Last Modified: 2013-12-25
I have a ComboBox called Combo1 in VB6.
I have a table called DepartmentName with values department.
1) How do I fill the combo box with these values?
and
2) once selection is made within the combobox, how do I store it in a var to be used in another subprocedure?

I tried filling a list1 when a form loads with a value as follows:
with me.list1
.RowSource ...............
I can't find the rowsource value on the list that drops down after the dot.
0
Comment
Question by:akr1234
  • 5
  • 5
  • 2
  • +1
13 Comments
 
LVL 7

Expert Comment

by:SQL_Stu
Comment Utility
Why don't u try the me.combo1.items.add
0
 
LVL 5

Expert Comment

by:KarcOrigin
Comment Utility
Try this:
    Dim var as String
    With Combo1
        .AddItem "departmentVal1"
        .AddItem "departmentVal2"
        var = .Text
    End With
0
 
LVL 5

Expert Comment

by:KarcOrigin
Comment Utility
Hi,
In addition to my previous comment...

You can use .AddItem method of combo box control to fill your values in the control. In case of "departmentVal1 and departmentVal2 you can also use the values from the RecordSet.

Eg:
With Combo1
    .AddItem rst.Fields("FieldName")
End With

Moreover if you want to store the value of the selected item then you can use .Text property of the control or you can use .ListIndex which will give you the index of the selected item.

I hope it will help you.

Cheers
0
 

Author Comment

by:akr1234
Comment Utility
Nothing works

Don't assume I know anything.

I think I asked too many questions to begin with.

I have a table called TBLDEPARTMENTS with fields AutoNum and DeptName.

When the form starts I want to fill in the combo box with the values from the DeptName fields.
0
 
LVL 11

Expert Comment

by:bingie
Comment Utility
Set a reference to MS DAO Object Library

'Set global database path
Set db = OpenDatabase("yourDatabasePath.mdb")

'Set local rs to get next booking number
Set rs = db.OpenRecordset("TBLDEPARTMENTS")

rs.MoveFirst

Do Until rs.EOF
  Combo1.AddItem rs.Fields("DeptName")
  rs.MoveNext
Loop
0
 

Author Comment

by:akr1234
Comment Utility
How do I do this

>>>>Set a reference to MS DAO Object Library
0
Do You Know the 4 Main Threat Actor Types?

Do you know the main threat actor types? Most attackers fall into one of four categories, each with their own favored tactics, techniques, and procedures.

 
LVL 11

Expert Comment

by:bingie
Comment Utility
Goto:

Project -> References
0
 

Author Comment

by:akr1234
Comment Utility
I set the reference to MS DAO 3.51 Object Library

When I run the code Form opens up and the Combo box is empty. Is this the right event which I am using.
Also it gives an error at the """Set db = OpenDatabase("c:\db1.mdb")"""  Type Mismatch.

Private Sub Combo1_Change()
Dim db As Recordset
Dim rs As Recordset

Set db = OpenDatabase("c:\db1.mdb")

Set rs = db.OpenRecordset("TBLDEPARTMENT")

rs.MoveFirst

Do Until rs.EOF
  Combo1.AddItem rs.Fields("Departmantname")
  rs.MoveNext
Loop
End Sub
0
 
LVL 11

Accepted Solution

by:
bingie earned 250 total points
Comment Utility
change,

Dim db As Recordset

to

Dim db as Database
0
 
LVL 11

Expert Comment

by:bingie
Comment Utility
Thanks, but why a "B" grade?
0
 

Author Comment

by:akr1234
Comment Utility
Thanx bingie, I clicked on good by mistake, it was excellent. Sorry.

Here is the code, the event should be dropdown


Private Sub Combo1_DropDown()
Dim db As Database
Dim rs As Recordset
'Set global database path
Set db = OpenDatabase("c:\db1.mdb")

'Set local rs to get next booking number
Set rs = db.OpenRecordset("TBLDEPARTMENT")

rs.MoveFirst

Do Until rs.EOF
  Combo1.AddItem rs.Fields("Departmantname")
  rs.MoveNext
Loop
End Sub
0
 

Author Comment

by:akr1234
Comment Utility
How can I change it to Excellent??
0
 
LVL 11

Expert Comment

by:bingie
Comment Utility
Glad you got it to work :)

You can post the request in Community Support (http:Community_Support)

Don't forget to leave feedback, and i'll leave some for you. :)
0

Featured Post

How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

Join & Write a Comment

You can of course define an array to hold data that is of a particular type like an array of Strings to hold customer names or an array of Doubles to hold customer sales, but what do you do if you want to coordinate that data? This article describes…
If you need to start windows update installation remotely or as a scheduled task you will find this very helpful.
Get people started with the process of using Access VBA to control Outlook using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Microsoft Outlook. Using automation, an Access applic…
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…

743 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

Need Help in Real-Time?

Connect with top rated Experts

16 Experts available now in Live!

Get 1:1 Help Now