Solved

MS Access - return value of two columns from combobox added

Posted on 2013-01-29
11
499 Views
Last Modified: 2013-01-30
Howdy,

I've searched high and low, and maybe it's my lack of terminology but basically here is the problem.

I have a dropdown combobox in a database that displays two columns from a different mdb file.  In the combobox Row Source field I have - "Select OtherMDB.Surname, OtherMDB,FirstName FROM OtherMDB;"
What I want to do is select the data and for it to return in one field in the new MDB database "Surname, FirstName"
So basically add the two columns together as the result.  Any ideas?
0
Comment
Question by:AGOIT
  • 4
  • 3
  • 2
  • +2
11 Comments
 
LVL 14

Accepted Solution

by:
Bill Ross earned 150 total points
ID: 38831943
Hi,

newtextbox = combobox.column(1) & ", " & combobox.column(2)

will concantenate the text from the 1st and 2nd columns in the combo box and place the result into newtextbox.

Regards,

Bill
0
 
LVL 61

Assisted Solution

by:mbizup
mbizup earned 50 total points
ID: 38831955
BillDenver has your answer - however Combo and Listbox column counts are zero based.  So the first column in your rowsource query is actually column 0 then 1,2,3 etc
0
 
LVL 77

Expert Comment

by:peter57r
ID: 38831959
Based on your stated rowsource, you should use indexes 0 and 1 rather than 1 and 2 as Bill indicated.
0
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.

 

Author Closing Comment

by:AGOIT
ID: 38831965
Thanks a mill.
0
 

Author Comment

by:AGOIT
ID: 38832046
Just trying to clarify, I'm very rusty on SQL and dont use ACCESS that much
Can I get it to state the return "Surname, Firstname" in the same combobox once it's selected?

Say the combobox is named "ComboFirstSecond" I take it I throw that into the "After Update" of the combobox  - ComboFirstSecond = ComboFirstSecond.Column(0) & ", " & ComboFirstSecond.Column(1)
0
 
LVL 14

Expert Comment

by:Bill Ross
ID: 38832158
Hi,

That's correct.  In the AfterUpdate event of the combo box put the code:

yourtextbox = ComboFirstSecond.Column(0) & ", " & ComboFirstSecond.Column(1)

Where yourtextbox is the name of the desired target text box.

Regards,

Bill
0
 

Author Comment

by:AGOIT
ID: 38832192
Thanks Bill.  I take it I can't get the combo box to be the target text box?  I'll just update it so that when it's updated the combo box is made invisible and the target text box is made visible in its place.
0
 
LVL 14

Expert Comment

by:Bill Ross
ID: 38832343
Hi,

You can only display a single column but...

You could create a computed column in the combobox's rowsource query and display it that way.  You can display the computed column and bind the combo box to a different column in the property sheet.

Regards,

Bill
0
 
LVL 61

Expert Comment

by:mbizup
ID: 38832389
+1

For that idea... ideally display concatenated first and last name in one column and set the bound column to a primary key/id field.

If you set the width of the ID column to zero,  your 'full name' will automatically be what gets displayed in the text portion of your combo.
0
 
LVL 47

Expert Comment

by:Dale Fye (Access MVP)
ID: 38832482
Actually, I like my people combo boxes to have only two columns (an ID, and a Name), but I display the name both ways (First Last and Last, First).  That way, regardless of how the user starts typing the name, they will find it.  My SQL usually looks like:

SELECT ID, FullName
FROM (
SELECT ID, [Last] & ", " & [First] as FullName, 0 as SortOrder
FROM myTable
UNION
SELECT ID, [First] & " " & [Last], 1 as SortOrder) as Temp
ORDER BY Temp.SortOrder, FullName

This would present the user with:

2,  "Jones, Steve"
1,  "Smith, John"
1, "John Smith"
2, "Steve Jones"

Note that the ID is not unique, so if you set the combo to a particular ID value, it will display the first value that matches the ID.
0
 

Author Comment

by:AGOIT
ID: 38834254
Brilliant!  Fantastic work, I should be able to get that to work!
0

Featured Post

Ransomware: The New Cyber Threat & How to Stop It

This infographic explains ransomware, type of malware that blocks access to your files or your systems and holds them hostage until a ransom is paid. It also examines the different types of ransomware and explains what you can do to thwart this sinister online threat.  

Question has a verified solution.

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

Microsoft Office Picture Manager was included in Office 2003, 2007, and 2010, but not in Office 2013. Users had hopes that it would be in Office 2016/Office 365, but it is not. Fortunately, the same zero-cost technique that works to install it with …
Having trouble getting your hands on Dynamics 365 Field Service or Project Service trial? Worry No More!!!
The viewer will learn how to use the =DISCRINV command to create a discrete random variable, use this command to model a set of probabilities and outcomes in a Monte Carlo simulation, and learn how to find the standard deviation of a set of probabil…
The viewer will learn how to use a discrete random variable to simulate the return on an investment over a period of years, create a Monte Carlo simulation using the discrete random variable, and create a graph to represent the possible returns over…

792 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