Advertisement

02.18.2008 at 06:48AM PST, ID: 23171417
[x]
Attachment Details
[x]
The Solution Rating System

With so many solutions, how can you tell which solutions are most likely to help you and which ones are not? To provide you with a tool to use, we rate our solutions based on various elements that most accurately determine if a solution is a quality solution. To explain what factors affect the solution rating, here are the elements we take into consideration when formulating our solution rating.

  • The Grade of the Solution
  • The Zone Rank of the Expert Providing the Solution
  • The Number of Author and Expert Comments
  • The Number of Experts Contributing
  • The Feedback of the Community

Your Input Matters
Because of the way the system is set up, the most important variable in this equation is you. As a member of Experts Exchange, you are able to cast your vote on the quality of the solutions in regard to how complete, accurate, helpful and easy to understand each solution is. When you provide your feedback, each rating is adjusted accordingly. So, if you see a solution that has a poor rating that you think is a good solution, let us know by rating it. As you do, the rating will be adjusted and will become more accurate for other members of our site.

If you have any suggestions that you would like to make for our rating system, please ask a question in the Suggestions Zone of Community Support.

Thank you!

Multiple selection list box on an Access form

Zone: Access Forms
Tags: Access
I need to add a list box to an Access form that allows the user to select multiple choices. When the user selects from the list, are the results sored in a single field in the underlying table?

Thanks
Start your free trial to view this solution
Question Stats
Zone: Microsoft
Question Asked By: brightfarm
Solution Provided By: LennyGray
Participating Experts: 1
Solution Grade: A
Views: 63
Translate:
Loading Advertisement...
02.18.2008 at 07:28AM PST, ID: 20920625

All comments and solutions are available to Premium Service Members only.

Start your 7 day free trial and see for yourself why Experts Exchange is the easiest and most proven technology resource in the world. Get Started

Already a member? Login to view this solution.

 
02.18.2008 at 07:37AM PST, ID: 20920732

All comments and solutions are available to Premium Service Members only.

Start your 7 day free trial and see for yourself why Experts Exchange is the easiest and most proven technology resource in the world. Get Started

Already a member? Login to view this solution.

 
02.18.2008 at 08:07AM PST, ID: 20921000

All comments and solutions are available to Premium Service Members only.

Start your 7 day free trial and see for yourself why Experts Exchange is the easiest and most proven technology resource in the world. Get Started

Already a member? Login to view this solution.

 
 
Loading Advertisement...
Microsoft
  • Internet Protocols
  • Applications
  • Development
  • OS
  • Hardware
  • Windows Security
Apple
  • Operating Systems
  • Hardware
  • Programming
  • Networking
  • Software
Internet
  • Search Engines
  • File Sharing
  • WebTrends / Stats
  • Spy / Ad Blockers
  • Web Browsers
  • New Net Users
  • Web Development
  • Chat / IM
  • Anti Spam
  • Web Servers
  • Anti-Virus
  • Email Clients
Gamers
  • Tips
  • Online / MMORPG
  • Puzzle
  • Emulators
  • Action / Adventure
  • Role Playing
  • Consoles
  • Game Programming
  • Strategy
  • Sports
  • Misc
  • Computer Games
Digital Living
  • Hardware
  • New Net Users
  • New Users
  • Software
  • Digital Music
  • Gaming World
  • Home Security
  • Apple
  • Networking Hardware
Virus & Spyware
  • Vulnerabilities
  • IDS
  • Encryption
  • Anti-Virus
  • Operating Systems Security
  • Software Firewalls
  • WebApplications
  • Cell Phones
  • Operating Systems
  • Internet
  • Hardware Firewalls
Hardware
  • Handhelds / PDAs
  • Displays / Monitors
  • Components
  • Networking Hardware
  • Peripherals
  • Laptops/Notebooks
  • Storage
  • Servers
  • Desktops
  • New Users
  • Misc
  • Apple
Software
  • System Utilities
  • Industry Specific
  • Network Management
  • Photos / Graphics
  • Page Layout
  • VMWare
  • Misc
  • Web Development
  • OS
  • CYGWIN
  • Voice Recognition
  • Message Queue
  • Quality Assurance
  • Security
  • Firewalls
  • MultiMedia Applications
  • Development
  • Database
  • Office / Productivity
  • Business Management
  • OS/2 Apps
  • Server Software
  • Internet / Email
ITPro
  • OS
  • Storage
  • Encryption
  • Operating Systems Security
  • Apple Hardware
  • Laptops & Notebooks
  • Servers
  • Networking Hardware
  • Peripherals
  • Devices
  • Displays / Monitors
  • WebTrends / Stats
  • Search Engines
  • Firewalls
  • WebApplications
  • IDS
  • Vulnerabilities
  • Email Clients
  • File Sharing
  • Spy / Ad Blockers
  • Web Browsers
  • Web Servers
  • Networking
  • Anti-Virus
  • Chat / IM
  • Anti Spam
Developer
  • Web Servers
  • Web Browsers
  • Game Programming
  • Dev Tools
  • Industry Specific
  • Office / Productivity
  • Database
  • CYGWIN
  • Web Development
  • Search Engines
  • File Sharing
  • WebTrends / Stats
  • Programming
  • Content Management
  • Application Servers
  • Protocols
Storage
  • Removable Backup Media
  • Storage Technology
  • Servers
  • Grid
  • Remote Access
  • Backup / Restore
  • Misc
  • Hard Drives
OS
  • Miscellaneous
  • Security
  • Development
  • Linux
  • VMWare
  • MainFrame OS
  • Unix
  • Apple
  • OS / 2
  • AS / 400
  • BeOS
  • Microsoft
  • VMS / OpenVMS
Database
  • Oracle
  • Miscellaneous
  • MySQL
  • Software
  • Sybase
  • Contact Management
  • PostgreSQL
  • Data Manipulation
  • Clarion
  • InterSystems Cache
  • Siebel
  • MUMPS
  • OLAP
  • SQLBase
  • SAS
  • GIS & GPS
  • 4GL
  • Berkeley DB
  • DB2
  • Informix
  • Interbase / Firebird
  • FoxPro
  • Reporting
  • LDAP
  • Filemaker Pro
  • MS SQL Server
  • dBase
  • MS Access
Security
  • Misc
  • Web Browsers
  • Software Firewalls
  • Operating Systems Security
  • File Sharing
  • Spy / Ad Blockers
  • Vulnerabilities
  • WebApplications
  • IDS
  • Anti-Virus
  • Encryption
  • Anti Spam
  • Email Clients
  • VPN
  • Chat / IM
Programming
  • Editors IDEs
  • Installation
  • Handhelds / PDAs
  • Multimedia Programming
  • System / Kernel
  • Algorithms
  • Game
  • Signal Processing
  • Project Management
  • Open Source
  • Database
  • Misc
  • Languages
  • Processor Platforms
  • Theory
Web Development
  • Scripting
  • Blogs
  • Web Servers
  • Software
  • Search Engines
  • Web Graphics
  • Images
  • Internet Marketing
  • Images and Photos
  • Components
  • Document Imaging
  • Web Languages/Standards
  • Illustration
  • WebApplications
  • Fonts
  • WebTrends / Stats
  • Authoring
  • Digital Camera Software
  • Miscellaneous
Networking
  • Protocols
  • Apple Networking
  • Network Management
  • Message Queue
  • Application Servers
  • Content Management
  • File Servers
  • Email Servers
  • Misc
  • Java Editors & IDEs
  • Wireless
  • Networking Hardware
  • Backup / Restore
  • System Utilities
  • ISPs & Hosting
  • Web Servers
  • Storage Technology
  • Removable Backup Media
  • Servers
  • Broadband
  • Grid
  • OS / 2
  • Novell Netware
  • Unix Networking
  • Windows Networking
  • Security
  • Telecommunications
  • Operating Systems
  • Linux Networking
Other
  • Community Advisor
  • Lounge
  • Community Support
  • New Net Users
  • Philosophy / Religion
  • Math / Science
  • Miscellaneous
  • URLs
  • Expert Lounge
  • Politics
  • Puzzles / Riddles
Community Support
  • Suggestions
  • New to EE
  • New Topics
  • Community Advisor
  • CleanUp
  • Announcements
  • General
  • Feedback
  • Input
  • EE Bugs
 
02.18.2008 at 07:28AM PST, ID: 20920625
In your listbox properties make MultiSelect = Extended.

My code below had a form that contained two listboxes. One was the array of available choices (on the left) and the other was the arry of items that the user selected (on the right) in the array.

In the listboxes, I had code in the OnDoubleClick events that would add items if the available array was double-clicked (on the right box) and remove items if items in the selected array needed to be deleted (on the left box). I also had command buttons that would move multiselected array items in one click to either side.

The data source for the listbox on the left looked like this:
SELECT qryREPORT_AuditableClients.BillsAvailable
FROM qryREPORT_AuditableClients LEFT JOIN tblREPORT_SelectedAudits ON qryREPORT_AuditableClients.BillsAvailable = tblREPORT_SelectedAudits.sBillSelected
WHERE (((tblREPORT_SelectedAudits.sBillSelected) Is Null))
ORDER BY qryREPORT_AuditableClients.BillsAvailable;

Note that qryREPORT_AuditableClients is an input from the array from the table that you want to select the base items from. This is what you have to figure where your data comes from. In this case, it was from a query of all clients who needed bills from a certain date range.

The data source for the listbox on the right looked like this:
SELECT tblREPORT_SelectedAudits.sBillSelected
FROM tblREPORT_SelectedAudits
ORDER BY tblREPORT_SelectedAudits.sBillSelected;

The three tables were:
Table Name: tblREPORT_SelectedAudits
Table Elements: sBillSelected(text) Indexed, No Duplicates

Table Name: tblREPORT_SelectedBills
Table Elements: sBillSelected (Text) Indexed, No Duplicates

Table Name: tblREPORT_SelectedReprintBills
Table Elements: sBillSelected (Text) Indexed, No Duplicates

Then use the code below to parse the user's selections:


Good Luck !!!

Lenny Gray
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
125:
126:
127:
128:
129:
Private Sub BillsOnFile_DblClick(Cancel As Integer)
    Call SelectBills
End Sub
 
Private Sub BillsSelected_DblClick(Cancel As Integer)
    Call RemoveBills
End Sub
 
Private Sub AddBills(BillsSelected As String)
Dim strSql As String
 
On Error Resume Next 'don't warn about duplicates
    DoCmd.SetWarnings False 'don't warn about duplicates
 
    strSql = "INSERT INTO tblREPORT_SelectedAudits ( sBillSelected )SELECT """ & BillsSelected & """"
    DoCmd.RunSQL strSql
    
End Sub
 
Private Sub DeleteBills(BillsSelected As String)
Dim strSql As String
 
On Error Resume Next 'don't warn about duplicates
    DoCmd.SetWarnings False 'don't warn about duplicates
 
    strSql = "Delete tblREPORT_SelectedAudits.sBillSelected FROM tblREPORT_SelectedAudits WHERE tblREPORT_SelectedAudits.sBillSelected= """ & BillsSelected & """"
    DoCmd.RunSQL strSql
    
End Sub
 
Private Sub SelectBills()
 
Dim intCurrentRow As Integer
Dim iRowsSelected As Integer
 
    iRowsSelected = Me!BillsOnFile.ItemsSelected.Count
    
    If iRowsSelected = 0 Then
        sMsg = "You must click on at least one item to select."
        iDgDef = vbOKOnly + vbCritical
        Beep
        Call MsgBox(sMsg, iDgDef, sTitle)
        Exit Sub
    End If
 
    For intCurrentRow = 0 To Me!BillsOnFile.ListCount - 1
        If Me!BillsOnFile.Selected(intCurrentRow) Then
            Call AddBills(Me!BillsOnFile.Column(0, intCurrentRow))
        End If
    Next intCurrentRow
    
    DoCmd.Requery "BillsSelected"
    DoCmd.Requery "BillsOnFile"
End Sub
 
Private Sub RemoveBills()
 
Dim intCurrentRow As Integer
Dim iRowsSelected As Integer
 
 
    iRowsSelected = Me!BillsSelected.ItemsSelected.Count
    
    If iRowsSelected = 0 Then
        sMsg = "You must click on at least one item to select."
        iDgDef = vbOKOnly + vbCritical
        Beep
        Call MsgBox(sMsg, iDgDef, sTitle)
        Exit Sub
    End If
 
    For intCurrentRow = 0 To Me!BillsSelected.ListCount - 1
        If Me!BillsSelected.Selected(intCurrentRow) Then
            Call DeleteBills(Me!BillsSelected.Column(0, intCurrentRow))
        End If
    Next intCurrentRow
    
    DoCmd.Requery "BillsSelected"
    DoCmd.Requery "BillsOnFile"
End Sub
 
Private Sub btnAddAllBills_Click()
    Call SelectBills
End Sub
 
Private Sub btnDeselectAllBills_Click()
Dim strSql As String
 
On Error Resume Next 'don't warn about duplicates
    DoCmd.SetWarnings False 'don't warn about duplicates
 
    strSql = "DELETE tblREPORT_SelectedAudits.* FROM tblREPORT_SelectedAudits"
    DoCmd.RunSQL strSql
    
    DoCmd.Requery "BillsSelected"
    DoCmd.Requery "BillsOnFile"
 
End Sub
 
Private Sub btnRemoveAllBills_Click()
    Call RemoveBills
End Sub
 
Private Sub btnSelectAllBills_Click()
Dim strSql As String
 
On Error Resume Next 'don't warn about duplicates
    DoCmd.SetWarnings False 'don't warn about duplicates
 
    strSql = "INSERT INTO tblREPORT_SelectedAudits ( sBillSelected )SELECT qryREPORT_AuditableClients.BillsAvailable FROM qryREPORT_AuditableClients"
 
    DoCmd.RunSQL strSql
    
    DoCmd.Requery "BillsSelected"
    DoCmd.Requery "BillsOnFile"
   
End Sub
 
Private Sub btnOK_Click()
        
    '******************
    '* Run the report *
    '******************
    Call btnExit_Click
    DoCmd.OpenReport "rptBILL_Audit", acViewPreview, , , acWindowNormal
    Exit Sub
 
    
End Sub
Open in New Window
 
02.18.2008 at 07:37AM PST, ID: 20920732
I appreciate your response but my limited level of ability in Access will require me to find a simpler solution so that I will be able to understand exactly what i have done. Does Access have a wizrd to create a list box where the user is able to select multiple items?
 
02.18.2008 at 08:07AM PST, ID: 20921000
Unfortunately, there are no "wizard-like" solutions.

There was a time when I was where you are at now (in a technical sense). Consider taking the time out to look over the code that I had sent. It is a total, turnkey solution to what you are looking for.

In life, we set our own limitations. It is within your power to expand your knowledge

"Argue for your limitations, and sure enough, they're yours." - Richard Bach, 20th Century author

I wish you well.

Lenny
Accepted Solution
 
 
20080236-EE-VQP-29 / EE_QW_2_20070628