This post is going to show you a ms access form filter sample.
The database I created only has one table called “Categories”.
We are going to have a form called “frmCategory”.
The form is going to be a “Split Form”, because that seems to be quicker than the “main form / sub form” setup.
The “Datasheet on Bottom” setting is set giving it this effect. Having this format, gives us this effect:
These are the settings for the “Split Form”
I reordered my fields so I can filter better (here is how it looks):
Here is my form all together:
…and here is my code:
Option Compare Database Private m_Where As String Private Sub btnReset_Click() Me.FilterOn = False 'clear all the variables m_Where = "" Me.cboDescription = "" Me.cboIncomeExpense = "" Me.chkTax = 0 End Sub Private Sub cboDescription_AfterUpdate() m_Where = m_Where & " AND Description = '" & Me.cboDescription & "'" FilterThis End Sub Private Sub cboIncomeExpense_AfterUpdate() m_Where = m_Where & " AND [Income/Expense] = '" & Me.cboIncomeExpense & "'" FilterThis End Sub Private Sub chkTax_AfterUpdate() m_Where = m_Where & " AND [Taxable] = " & Me.chkTax FilterThis End Sub Sub FilterThis() 'clean the string first If Left(m_Where, 4) = " AND" Then m_Where = Mid(m_Where, 5) End If Me.Filter = m_Where Me.FilterOn = True End Sub
The variable “m_Where” is where the filter string is stored, and has modular level scope, so the value persists while the form is open.
Let me know if you have any questions.
How To Make An Access Form Time Picker
Here is a relatively easy way to select times for your time entry text boxes. It’s a reusable form that allows you to pick a time from an Access form. There are probably different ways to do this but here is the way I would do it. On the form that has the time fields, […]
How to pick a file to load In VBA
Picking a file to load in your Microsoft App is a very important skill to know. In this blog post you will see how to do it. First you need to set a reference to the MS office object library From VBE editor –> select Tools > MS office object library (click check mark) Sub […]
What is the purpose of the Me keyword in Access VBA?
What does the Me keyword mean? “Me” refers to the Access form currently in focus. Instead of writing out the entire form reference, you can just use the keyword “Me” which is easier. Like: Me.txtbox = “I am a textbox on the form that currently has the focus.” or you can update a label’s caption […]
How do I run VBA code when form opens
How do I run VBA code when form opens? There are probably several ways people do it, and some may say “He’s not doing it right. It’s done this way…” Good for you. This is the way I do it now, and it has worked well for me. 1. Find the form you want to […]