Okay I created a database that I am going to use to collect data about a study we are doing.
When a participant is added to the database on the main (Participation Details form), it automatically generates an ID and creates a record in a second table/form - a questionnaire (i.e. Athens Questionnaire) that the participants fill out preserving the ID number that was created in the participation details form (I have been able to achieve this).
However what I wanted to do next is be able to filter the Athens questionnaire using a combo box which contained all the participant's ID's.
I was able to create the combo-box and populate it with the ID's using a query and did not put a control source on it (i used =tblAthens.ParticipantID ....) iand created a sub-form that contained the questionnaire. I did this by creating the questionnaire in a separate form called frmAthens_sub and dragging it from the "explorer window" into my open Athens Questionnaire form. However when I attempted to place code in the "After Update" field of the combo box I keep getting errors and I am not sure why.
The code I am using is:
Option Compare Database
Sub SetFilter()
Dim LSQL As String
LSQL = "select * from tblAthens"
LSQL = LSQL & " where ParticipantID = '" & cboSelected & "'"
Form_frmAthens_sub.RecordSource = LSQL
End Sub
Private Sub cboSelected_AfterUpdate()
'Call subroutine to set filter based on selected ParticipantID
SetFilter
End Sub
Private Sub Form_Open(Cancel As Integer)
'Call subroutine to set filter based on selected ParticipantID
SetFilter
End Sub
It is highly possible that I am just not doing something right as this is the first time I have used sub-forms. I tried to attach a copy of the database but cant get it below the max.
The error seems to be coming from this line --> Form_frmAthens_sub.RecordSource = LSQL
Is there an easier way or alternative code for filtering a sub-form from a combo-box?
I am new to access. I have created a form in which I used a combo to show Main Area Name. this value is passed into a query to show only area under main area only. Created another combo to activate the query to show the area.
I have seen a few articles here and there on using a combo box to filter records in a sub-form and to filter records in another combo box, but I am not getting anywhere. I hope someone can belp
Exercise 1
For this exercise, I have the following tables:
tblClients containing client names tblProjects containing some project details
I want to set up a simple form, so that the user can select a client name from a combo box on the main form which filters the project detail records in the Projects sub-form. Once the user enters project details, I want this info as well as the selected ClientID to be fed back to tblProjects.
Exercise 2
I have the following tables:
tblProjects as above tblWorkstream containiig names of workstreams and some other details.
Every project has one or more workstreams
I have a form where users will enter hours worked on each workstream. They will first select Project from a combo box on the main form. This should then filter records to be displayed in the Workstream Combo box, before they can then enter hours.
Please let me know if you need me to explain any part of this better.
Thanks in advance.
ps. I am a novice, so I'm hoping to do the above using default MS stuff, not with complex programming!!!
I'm having a little difficulty setting up a combo box to filter another combo box. I've actually got one working but the second one is giving me all sorts of errors. On the attached database, there's a form called frmAddNewRecord. At the top of the form there's a combo box which allows you to select a name and another combo box beside it which acts as a filter so only names from a certain section are shown (working fine).
The subform which is attached to this form and contains the training details, has another combo box which allows you to select a job...I've tried to add a combo box beside this to filter it but I can't get it to work.
Hi All, Just after a code or way to filter client details via a combo box. Basically select combox drop down menu select the sales rep then it filters by sales rep and shows only the clients for that sales rep. I can get it to filter but it does the first client of that sales rep but not the rest.
I have two combo boxes, Company Name & Name. The data that is selected is used to run a query from a button. However i would like to set it that if the user (but not required) selects the company name then only the names of the people belonging to that company appear, but if no company is selected then all the names for every company appear.
Can anyone make a suggestion as to the best way to go about this.
I've read several threads about one combo filtering a second combo on a form, but can't seem to find a similar enough situation. Can you please advise on the following:
I have a form based on a query containing a whole load of fields from several tables. In particular the query contains a field called WorkstreamID from tblWorkstream.
Each tblWorkstream record has a Workstream ID, Workstream and foreign key called Project ID from tblProjects.
I want my form to have two combos: one for Projects (unbound) which filters the combo for Workstream (bound to the underlying query of the form)
:D I have a form set up where a user chooses a page tab. Either statistical reports or detail reports. Then they have to choose between 2 toggle buttons. Candidate or hire.
So a user chooses detail, then candidate. An option group below that shows the different groupings of detail candidate reports that they can choose.
A couple of examples - detail report of candidates by office applied to, department, application source etc.
Once that is chosen a button is visible to continue. Now they are taken to the appropriate form. This is done by a global variable gstrformname defined in the afterupdate of the group option that they chose (office etc.)
Once they click to continue to the criteria form, they are choosing the criteria. (for example purposes) the choice below takes the user to a criteria form for choosing an application source ( email, monster.com etc) or click a button and all types are given. I have all of that set up. But now I want to change what report the command button is opening, to a variable. A variable that would be set by the below form when the type of report and grouping for the report are chosen...that defines a certain report.
I specified on this main report menu that it is a candidate report that I want, but when I get to the criteria form, I need a way to pass that choice on. I am not sure how to best do that.
I am trying to avoid making 2 copies of the same form 1 for candidates and 1 for hire. :crazy: I undertstand that I should pass a variable here.
So basically on the main form they choose candidate or hire report, then they choose group. The grouping information tells the command button what form to open (the application source criteria form, the office criteria form, etc). The thing is, this form is the criteria for the candidate report and the hire report. The command button on the criteria form would ideally be -
docmd.previewreport gstrreportname, acpreview
my question is, how or where do I define, from the point that they choose candidate or hire, to the next form, that they want the candidate by office or hire by office report? (define the gstrreportname variable as one of those too.)
Make sense?
Here is a pick of the report form (menu) http://www.geocities.com/misscrf/reportmenu.jpg
For the afterupdate of the frame for the grouping of the report, I have a select case. In that I define gstrreportname for the report it is, if the choice goes right to a report. If it goes to a form first (for criteria), I define that form with a global variable gstrformname. Can I also define the report there (gstrreportname)? If I do that, will the criteria form know that? Even if I close the main report form?
I have a form with a list box that is filtered by the entry made into a combo box. It works fine except that I want an option which shows all records in the list box. I tried using the formula below in the query criteria for the list box but it returns no records when I select All in the combo box. Why won't it work? Is there a better way to do this? Can anyone help?
hi all, another quick question (last one for awhile I promise) but is there a way to add an option to a combo box (Filter by Selection) and Remove/Filter sort without right clicking on it? cheers, Andrew
I have a table that has the fields Scheme no, Title, Area, Pole No, Rate No, Description, Quantity. Each Scheme No has a number of Poles attached to it, and subsequently each Pole has a number of different rates attached (eg of table shown below)
On the corresponding form I have ID No, Title and Area in the Form header as they are the same for all fields. Therefore in the detail section I want the rest of the fields. The problem I have is I want the user to be able to choose a pole no from a combo box and show up only the corresponding rates to that pole. So for instance below the user could select in the combo box Pole no YP08 and only the rates used on that pole would show up (in this case it would be just HV99 and its description).
Hi There. Im Trying To Filter Records Through A Combo Box Which Is So Far So Good. However What I Would Like To Do Is Select The Records Through The Combo Box And Have It Return And Populate Only Those Records. Has Anyone Got Any Suggestions To This? Ive Attached The Sample Database Im Working On.
I am having an issue with my combo box filter, this set of code dynamically updates the combo box to add any new user and select the accounts that are assigned to them. Given everything works and everything filters, the problem is merely a cosmetic one that has to be fixed.
Basically what is happening is the Combo Box displays "*", and "All Records" but we can not get it too show the "Unassigned" -- any idea why?....
I have a problem. I want to apply a filter on my form.When I filter on the combobox it works fine. But when I filter on the date the form jumps into the error handler. Below is the code that I use for my filter:
Sub ApplyFilter() Dim sFilter As String sFilter = ""
'Filter on date If Me.txtFilterDatumMelding = "" Or IsNull(Me.txtFilterDatumMelding) Or Me.txtFilterDatumMelding = 0 Then If sFilter = "" Then sFilter = "" Else sFilter = sFilter & "" End If Else If sFilter = "" Then sFilter = "[DatumMelding] = " & "'" & txtFilterDatumMelding & "'"
Else sFilter = sFilter & " and [DatumMelding] = " & "'" & txtFilterDatumMelding & "'" End If End If
'Filter on combobox If Me.cboFilterCallMelder = "" Or IsNull(Me.cboFilterCallMelder) Or Me.cboFilterCallMelder = 0 Then If sFilter = "" Then sFilter = "" Else sFilter = sFilter & "" End If Else If sFilter = "" Then sFilter = "[CallMelder_ID] = " & cboFilterCallMelder Else sFilter = sFilter & " And [CallMelder_ID] = " & cboFilterCallMelder End If End If
If Len(sFilter) > 0 Then Me.Filter = sFilter Me.FilterOn = True Else Me.Filter = "" Me.FilterOn = False End If End Sub
I hope that you gus can help me. Could it be that the filter is a string and the date filter field is a date??????
I have at present 2 combo box's that filter, now....... the 1st combo box is a drop down value list that will filter the OPOwner (persons name) for example there are 3000 records and 5 OPOwners, I can for now filter my name in cboOPOwner combo box.
The 2nd box (drop down list) is Status which would be "New";"Open";Pipeline";"Lead" ect...
If I filter my name it brings up all records related to my name and the when I want to filter status it will bring up all records relating to say 'Pipeline' however it will bring everyone's ;Pipeline and not just mine.
What I want is to filter my name in the OPOwner combo box and once all records are filtered in my name then in the status combo box filter what ever I want to look at. example what I want to filter - 'Filter Neil' then 'Filter Pipeline, or filter Lead or New'.
This is the code I have in both combo's....
Private Sub cboOPOwner_AfterUpdate() If Nz(Me.cboOPOwner.Text) = "" Then Me.Form.Filter = "" Me.FilterOn = False ElseIf Me.cboOPOwner.ListIndex <> -1 Then Me.Form.Filter = "[OPOwner] = '" & _ Replace(Me.cboOPOwner.Text, "'", "''") & "'" Me.FilterOn = True
I am trying to edit the below code to use 'Form_Select_Batch_Number_Form.Combo9.Value' as the combobox value to filter the records in 'Form_ Remitter_DB_Entry_Form'. I am trying to get the filtering to occur when a button on Form_Select_Batch_Number is selected. Below is my attempt to create the button to accomplish this but it is not functional and needs some work.
Code:
Option Compare Database Private Sub Command0_Click() DoCmd.OpenForm "Blank Form2", windowmode:=acDialog Dim MyValue As String
I am back with another question about Access 2010. I would like to filter a table by using a combo box.
I have several columns in the table, and I would like to filter them by their departments (there are several users in each department)
I have tried using the combo box wizard and select " I would like to search records based on the values in combo box" but the problem is that the department shows up as many times as it is in that table.
I came across another solution which was to create an unbound combo box and link it with the query. and the department criteria would be the following:
I`m using access 2010 version, i have one table(Customer) which has one-to-many relationship to the table(Order), so the Order table contains many records from one single record in Customer. How to create a combobox that filter and show how many orders the Customer has. Example:
Table(Customer) Line 1 - Crystal
Table(Order) Line 1 - Water Line 2 - Cookies Line 3 - Pens
Not sure if I am asking the right question, but....
I would like to pass a string variable to a query but it does not seem to work.
In the query, my criteria for the date field is (and works):
>=[forms]![frmDisposition]![FromDate] And <=[forms]![frmDisposition]![ToDate]
But, this is not working for the ID field criteria:
[forms]![frmDisposition]![ID]
In the forms code, I have a string based on the result of 3 check box. I tried using an unbound (ID) control to display the string so I know that the value of the string is correct. EX: "FW" Or "MA" Or "PD"
Is it possible to pass the value of the string to the query or do I need to try and pass the value of the unbound control to the query?
I have created a query which has a function call as the criteria for one of the numerical fields. The function returns a string expression such as .....
1) 132 OR 142 OR 156 2) 132 OR 142 3) 132
..... into the criteria section of the numerical field.
Unfortunately, the query doesn't work if the criteria is generated by the function call. However, if I hardcode the criteria (don't send a function call but directly write 132 OR 142 OR 156) the query works.
I am puzzled and I am not sure how to solve this problem.
I am writing a database with a number of tables with forms attached to each table. I have placed navigation buttons on each form to move to first, last, next, previous. I have set up the code associated with the buttons as "public sub" so it is available for each form to use.
This was working OK except that when I used the NEXT button at the last record it would open a new blank record & keep opening a new blank record on each click.
To over overcome this I put in an If statement to check if it had moved to a new record. To do this I used the following:
If Me!NewRecord Then ..... etc
Now I get an error "Invalid use of Me key word" I suspect it is because I am using ME in a public sub
How do I overcome the problem of moving passed the last record and still have the coding available to all forms?
The Code is below.
Thanks for any help.
Public Sub Next_Record_Click() On Error GoTo Err_Next_Record_Click
DoCmd.GoToRecord , , acNext
If Me!NewRecord Then ' If new record move back to previous DoCmd.GoToRecord , , acNext ' Send message MsgBox "This is the last record", , "No More Records"
I have a combo box that has 3 columns. What I am trying to do is get the third column to be passed as the value to another textbox after the combo box is selected.
combo box sample data: Male/John/NY the 3rd Column which is state I would like to have it sent to the State Field...
I currently have a form that asks for 2 fields to be filled with data to be passed to 3 separate macros that will then run a set of about 10-15 queries based on the values entered in the form. This used to be sufficient as the manually entered data was only a small set. Now the number of values that need to be run through the macros is starting to become too large to constantly be changing the values and running the macros. I can set up a table that will contain all the value combinations that would need to be entered into the form to then be passed to the queries, but how can I set this up to be done automatically. I know it can be set up using a loop, but I'm not familiar with VBA code (most of my access work is done using the design tools) so I'm not sure how to correctly set the fields that would be passed to my macros. I can also deal with the values being passed to my form one at a time, then have the macro run on that set of values, then have the next value sent to the form, etc . . .
I have a table set up with data for all stores that I'm querying. I need to select the REPORT_BRAND and store_no from this table and run about 10-15 queries that will sort the data properly for a dedupe that will be performed at the end. The form that is set up asks for the REPORT_BRAND and store_no, then it gets passed to the macros which will create the tables for store #1. The values in the Form then get replaced with the next report_brand and store_no and the macros get run again for store #2. At the end of all the stores, I have 2 tables setup with all the final results for each store. These 2 tables then provide the results that I then manipulate to fill in the reports that are required. I need to run each store separately because the results as based on total record percentages by store.
I want to remove the manual intervention from the procedure and just have a table feed the form (or eliminate the form all together) and have the macros run for all stores on my table.
I've searched around and have seen a lot of examples of using a loop, but not being familiar with VBA makes understanding exactly what I need to enter for my specific data a bit difficult.