Solved

Access Combobox, Value result wrong

Posted on 2016-08-25
5
43 Views
Last Modified: 2016-08-26
Please see the simple database I have included.
The combobox of the included form is unbound and has as its source a simple table with a column named c_name (sorted ascending) and the id column, bound to column 0.
The forms data source is a query based on the table. The querie's criteria is set to a tempvar which holds the comboboxe's column(1) value.
This updates the form with the name and address of the combobox selection. Simple enough.
However, look at the bottom field of the included form. It will show you the combobox value vs the combobox column 1 value...
and they are different! So
This cannot be! Can someone please explain how to fix this problem? I have tried decompiling to no effect.

I inherited a project which has a form directly linked to a table with several comboboxes set up in an identical fashion and they are updating the table with incorrect values. Thank you.
Database9.accdb
0
Comment
Question by:JP_TechGroup
  • 3
  • 2
5 Comments
 

Author Comment

by:JP_TechGroup
ID: 41770535
This has something to do with the bound column set to 0. Setting it 2 resolves the issue in this context.
0
 
LVL 35

Accepted Solution

by:
PatHartman earned 500 total points
ID: 41770576
I think your confusion is being caused because the ID is the second column of the query rather than the first.  So column(1) would be numeric.  What I don't understand is why the bound column is registering as numeric rather than text.  But once I changed the column order for the query and adjusted as below, the problem clears up.

Change the order of the selected columns.
Change the bound column to 1 (this is the unique ID for the RowSource - and if the control were bound, it would be the column that would be stored in the RecordSource)
Change the column widths to - 0", 1"
Change the expression that sets the TempVar

TempVars("id") = Me.cmb_id.Value
0
 

Author Comment

by:JP_TechGroup
ID: 41770635
Yes, I actually left the column order as it was and made the bound column 2.
I then set the column count to 1, same result.
0
 
LVL 35

Expert Comment

by:PatHartman
ID: 41770712
Sometimes you can get away with doing things like lying about the column count.  Other times you get bit.  Best to stick to standard methods and avoid potential issues and the confusion you cause people who must work on the app after yourself.  Good practice is "good" for a reason.
0
 

Author Comment

by:JP_TechGroup
ID: 41771647
Agreed. Thanks
0

Featured Post

Simplifying Server Workload Migrations

This use case outlines the migration challenges that organizations face and how the Acronis AnyData Engine supports physical-to-physical (P2P), physical-to-virtual (P2V), virtual to physical (V2P), and cross-virtual (V2V) migration scenarios to address these challenges.

Question has a verified solution.

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

Introduction When developing Access applications, often we need to know whether an object exists.  This article presents a quick and reliable routine to determine if an object exists without that object being opened. If you wanted to inspect/ite…
Phishing attempts can come in all forms, shapes and sizes. No matter how familiar you think you are with them, always remember to take extra precaution when opening an email with attachments or links.
In Microsoft Access, learn how to “cascade” or have the displayed data of one combo control depend upon what’s entered in another. Base the dependent combo on a query for its row source: Add a reference to the first combo on the form as criteria i…
In Microsoft Access, learn different ways of passing a string value within a string argument. Also learn what a “Type Mis-match” error is about.

770 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