Forms :: Set Combo Box To Value As Determined By Listbox Column?
Apr 30, 2013
In short, I have a form that has a combo box containing people type values. Then two text entry boxes, firstname, lastname. Then an add, update, and delete button...
When the person type is chosen from the cbo, and the names are filled out, and the 'add' button pressed a query sends the values back via sql insert, and a listbox next to these controls then lists the new person records. Great - No worries...
Then, when someone wants to update the record now shown in the listbox, on double click of the record in the listbox, vba repopulates the name text boxes from the listbox's columns values (easy), and then *magically* the person type combo box chooses amongst its values the value stored in the person type column from the listbox.
I can't get the combo box to be set to the value that I am grabbing from the listbox's column values.
Part of me wonders if I would have to program in a way to search among the combo boxes values and find out which one was selected from the listbox, find it's index value and then set the combo box to be that index/value record... but that seems like a hard way to do it... and I'm not exactly sure how?
I have set up a form to run a query. There are 3 main variables; 'Status', 'Substatus' and 'Publications'. The publications variable has multiple choices on the form as it is likely i will be sending out more then one publication at a time. What I need to be able to do is that if a dropdown box is left empty it returns all fields of that variable but at the same time only those that are within the criteria set out by the other combo boxes.. i.e. status is left empty, but the query still runs and filters out those specific substatus and publication. I think this is becoming complicated because the publication criteria relys on five combo boxs. So in short, how do i get a criteria to return all results for that field if the combo box is left empty but still filter the entire list by the other combo boxes. I have tried setting the parameter in the criteria as "*" or forms.combobox1 etc but this doesnt really allow for the multiple selections for publictions!
first of all, i'm new to access. the only experience i have with it is reading the "microsoft office inside out", access section, and doing some research on the web.
i work for a school district and my boss has asked me to make a database with all our assets. i used to have everything in excel, but he prefers access, so here i am. what i'm wanting help with is making a combo box that lists manufacturers like hp, dell, etc., and then having the next field show a list of models depending on what was selected in the manufacturers field. so if i select dell, i want only dell models to show up in the combo list for models.
i can make the combo lists, but i don't know how to make it so that the entry in one field affects the list in another field. i've tried putting in lookup values, i've tried doing it with expressions in queries, and a few other things. i've tried searching google, and the forums and i've found things that are kind of similar to what i want, but doesn't do exactly what i want. so here i am...is there a simple way to do this? this isn't required of me, but now it's driving me crazy because that's the way i'd like to have it but i can't figure it out.
I was wondering if a list box can be made so the header of each columns is clickable.. so you can sort by that column either alphabetically or numerically?
This is the function i'm using for summing a listbox column:
Function TonSum() As Variant Dim I As Integer, J As Integer, ctl As Control Set ctl = Me.lstDrivera2 J = ctl.ListCount - 1
[code]...
The problem i have is if one the records in the listbox doesn't have a value (is null) then Access gives me a 'Type Mismatch' error. How to treat the null value so it excludes it from the sum?
Dim i As Integer, c As String With Me.ListBox.Column(0) For i = 0 To Me.ListBox.ListCount - 1 c = c & Me.ListBox.ItemData(i) & ", " Next End With c = Left(c, Len(c) - 2)
This works great!! Now I am trying to concatenate the column 3 of the listbox.
Tried to use the code below (pointing to the second column) but it always returns the first column data.
'Dim i As Integer, d As String With Me.ListBox.Column(2) For i = 0 To Me.ListBox.ListCount - 1 d = d & Me.ListBox.ItemData(i) & ", " Next End With d = Left(d, Len(d) - 2)
ItemData does not allow pointing to my 3 column of the listbox.
The database I'm working on stores product records. To support the user narrow down which product they want to use, the navigation form has a listbox that looks to several combox values to filter the records it displays. As the user selects values for additional comboxes, the list of products from the listbox is refined. What I would like to do is set the comboxes up so that they also have to check the listbox to determine which records they should display.
For example:
Comboxes: Customer, Species
Starting out the listbox shows all products. The user wants to find a particular product that is sold to "Harly Quinn's Crab Imporium". They select "Harly Quinn's Crab Imporium" from the customer combobox. The listbox updates to show only products sold to Harly Quinn. The database currently has this functionality. What I want to add comes next:
The user determines that there are still too many records being displayed in the listbox, so he/she attempts to refine the search further by selecting a species from the species combobox. Currently all species from the species table are selectable from the species combobx, meaning that if the user selects a species that isn't sold to Harly Quinn, that the listbox will show no records. What I would like the combobox to do is refer first to the listbox and determine which species are still viable options based on the records available from the listbox.
I've created a form with a combo box to allow users to set the Manager of an employee. I've set the control source for the combo box to the Managers table that contains a primary key and the manager's name.
I've set the bound column to 1, the column count to 2, the column widths to 1;2 (I want to show both columns in the drop down because users can identify managers by either their name or Manager ID).After updating the combo box, the Manager ID shows rather than the Manager Name. Is there a way to have the Manager name show instead of the Manager ID without setting the column widths to 0;2?
I am having a problem entering the 2nd column of a combo box.This is a lookup combo looking at a table called Accessories. The combo is looking up 4 columns in the table, the first column is called "Action" the 2nd column is called "Item". I click on the combo box in the form and decide on the action I want and click that row, it then enters the action I have clicked. But it is the "Item" column I want to enter on the form not the "Action" column.
This only works if I make "Item" the first column which I do not want to do. I want to keep the combo columns in the order they are but enter the 2nd column not the first. I have tried making the bound column the 2nd column but it still enters the 1st column. I am sure access must be capable of doing this but I cannot work out how. It seems you can only enter whatever is in the 1st column.
I have a form that has a combo box (box1), Its row source is from a table (table1) than the forms record source (query1). The data box1 sources is from column1 in table1.
I then have a text box (box2). I need it so when i select a record in box1 (from column1) that it displays the corresponding data in that same record (and table) but from column2
Example:
A table has a column with equations and another column with the answer.
I select "1+1" in the combo box Then in the text box it displays "2"
There are 3 column in a combo box, ID is bound column
Part no ID Description 0040 1 class 40-1 0040 2 class 40-2 0040 3 class 40-3 0041 4 class 41-1 0042 5 0042 6
When key in part no 0040, 3 rows under 0040 will be listed out only, filter and match as value entered only. do not show others part no in the combo box selection.
Am I correct in thinking the only way to have a combo box with different values in each column is to create a table and then bind the combo box to the column you are referring to if you want it to represent a value from another.
For example if I have a combo box with the words January, February etc can that combo box have a corresponding month number value in a separate column (this combo would be derived from a list) or would I need to create a table holding both the month names and numbers and then bind to the name value for selection but use the month number value?
The reason I ask is I wasn't sure if for every type of list I wanted with multiple column values, I would need to create a table.
I have a multiple column combo box on my form, that is correctly populating. When I make a selection, it displays the result from the first column. Bound column seems correct, as my table is being populated correctly.
1 - Can I display the values from both columns after the selection has been made?
2 - If not, can I choose to display the second column (not the first) after the user has made a selection?
I have added a combobox to one of the forms in my customer database using the "find a record in my form based on a value in my combobox" section of the combobox wizard.I have a number of columns in the combobox (the primary key is the bound value, and I have unbound columns for first name, surname etc).
I sorted the records in the combobox by column 3 (surname) so I can scroll through the list and choose surname instead of having to memorise customer numbers. Now I have more than 1500 records (with more on the way), scrolling through takes ages, and I was wondering if there is a way to adapt the combobox so I can (for example) type the first letter of a surname into the box and be taken to surnames beginning with that letter, whilst retaining the primary key as my bound column?
My initial thought was to base the combobox values on a query, and make the query prompt for a starting letter (or string of letters) each time it runs, so it only displays the query results in the list, but I was wondering if there is a neater way to do it?
In my form my combo box displays a list from a query called DORP-HDR that has 3 columns
DORP-ID | CODE | NAME
and displays them like that is the drop down list
The form field that the combo is bound to takes the numeric-id field as its value. In the combo control wizard i nominated that value, and in the properties pane bound column value is 1.
and in the properties pane the row source is:
SELECT [DORP HDR].[DORP-ID], [DORP HDR].[CODE], [DORP HDR].[NAME] FROM [DORP HDR] ORDER BY [NAME];
So far so good. I have created lots of combo boxes before like this.
But this time i want the second field in the list (CODE) ALSO bound to another field in my form . So I want the combo to transfer two values not one. How do i do this?
How to change a combo box to a text box control in a subform for a field that is based on a two-column value list. I want to be able show the value in the unbound column (which is a text value instead of a number).
My subform has a field called "ProjectStatus". This field is a value list in my projects table with the following row source:
So, it is set as a two-column value list with a number data type for the bound column. In my forms, column 1 is made invisible (set to 0") so that only the text value is shown to the user. This works fine with combo boxes.
However, I want to change the unsightly combo box to a text box and show the text value of the unbound column (this form will only be used to show data not for entry). When I change it to a text box control, the value that appears is a number, of course.
If ProjectStatus were based on a table, rather than a lookup value list, I would query it but I am not sure how it should be done with a value list. I could just store the text value instead, I guess, and redo a bunch of stuff or I could create a "Status" table and redo a bunch of stuff (this seems like my lot in life lately) but I feel like there should be some way to do this.
I'm still a little new to this, so please bear with me. I've searched to no avail for what I am looking for, so if there is an existing thread and you would rather point me in it's direction as opposed to answering my question, that would be fine.
I want one of the parameters of my delete query to be only the first column of my "ProdList" listbox, but don't know how to specify this. This is what my query looks like so far... Can someone tell me how do i need to change it?
DELETE ProductionLog.Username, ProductionLog.Date, ProductionLog.OrderNumber FROM ProductionLog WHERE (((ProductionLog.Username)=fOSUserName()) AND ((ProductionLog.Date)=[Forms]![Production]![TheDate]) AND ((ProductionLog.OrderNumber)=[Forms]![Production]![ProdList]));
I was wondering whether there is an "easy" way to make the column widths of a list box to adjust to the largest peice of data under it.... without filling it in yourself in the design view... So in VB....
I know that there is the property COLUMNWIDTHS, and that you can adjust it by calling that property..
But how to make it the column width to adjust automatically to the largest piece of text in that column??
I have a list box with 3 columns and one line on my form and am writing an update query that is to use the value from the first column of the query to update a record in a table. I have referenced the list box as ListBox.Column(0) but the code displays a value of null when I run it and the record that is to be updated is updated to Null (it is blank). How do I write the code so that the value that is in column 0 of this list box is passed through the code?
I've created a listbox and am using the following code
stWhat1 = "": stCriteria1 = "," For Each vItm1 In Me!LstArchive.ItemsSelected stWhat1 = stWhat1 & Me![LstArchive].Column(0, vItm1) stWhat1 = stWhat1 & stCriteria1 Next vItm1 Me!txtCriteria1 = CStr(Left$(stWhat1, Len(stWhat1) - Len(stCriteria1)))
The problem is that my bound column is a text field. I'm really struggling on where to put my quotations so that I get the following with the In function In('00638','00639').
Any help or pointing in right direction would be very much appreciated Carrie