Free Lessons
Courses
Seminars
TechHelp
Fast Tips
Templates
Topic Index
Forum
ABCD
 
Home   Courses   TechHelp   Forums   Help   Contact   Merch   Join   Order   Logon  
 
Home > Courses > Access > Developer > D11 > Introduction < D11 | Lesson 01 >
Introduction

Welcome! Test Timer, Counters & Dialogs


 S  M  L  XL  FS  |  Slo  Reg  Fast  2x  |  Bookmark 

Welcome to Microsoft Access Developer Level 11. In this course we will finish enhancing the test taker database started in previous developer levels, including adding features like displaying "Question one of two," implementing a timer, and managing multiple open forms. We will also begin building the universal dialog box, which will allow greater customization than the standard Access message box, such as controlling fonts, colors, and adding timers. You should be comfortable with Access Developer 9 and 10, as well as the earlier beginner, expert, and advanced series, since we build on those concepts throughout this course.

Navigation

Keywords

Access Developer, test taker database, VBA programming, universal dialog box, message box customization, dialog box timer, RGB function, form enhancements, cascade close forms, tracking test time, input box customization, font color control, Office 365

 

Start a NEW Conversation
 
Only students may post on this page. Click here for more information on how you can set up an account. If you are a student, please Log On first. Non-students may only post in the Visitor Forum.
 
Subscribe
Subscribe to Introduction
Get notifications when this page is updated
 
Intro Welcome to Microsoft Access Developer Level 11. In this course we will finish enhancing the test taker database started in previous developer levels, including adding features like displaying "Question one of two," implementing a timer, and managing multiple open forms. We will also begin building the universal dialog box, which will allow greater customization than the standard Access message box, such as controlling fonts, colors, and adding timers. You should be comfortable with Access Developer 9 and 10, as well as the earlier beginner, expert, and advanced series, since we build on those concepts throughout this course.
Transcript Welcome to Microsoft Access Developer Level 11, brought to you by AccessLearningZone.com. I am your instructor and personal Access expert, Richard Rost.

In today's class, we are going to finish up with some enhancements in our test taker database that we started in Level 9 and worked on last class in 10. We are going to do things like display "Question one of two." We are going to put a timer on it. We are going to put all kinds of cool enhancements on our test taker data.

We are also going to start building something new called the universal dialog box, which is basically the message box on steroids. You can control the font, the color, and we are going to put a timer on it later so you can have it pop up for a few seconds and go away. That is going to start today, the universal dialog box.

You should definitely have taken Access Developer 9 and 10 to not be lost today because we started the test taker database in Access Developer 9 and continued with it in 10. Unless you are just interested in the dialog box stuff, you can just start today. Of course, you should also have under your belt all of my beginner, expert, and advanced classes. That will certainly help you when it comes to the developer series.

For those of you who may not have taken any of my classes, there are nine beginner lessons. There are the expert classes, which go into more detail on relationships and advanced form design, and things like that, including reports. The advanced series mostly deals with macros and events, but there is also a bunch of stuff as we will discover in today's class. I covered a lot of things having to deal with form colors, the RGB function, and all that, which I do cover in the advanced series. Do not just skip over advanced. There is good stuff in there.

This is the developer series, which focuses mostly on things we can do with VBA programming. Each one of the four series has different levels. Beginner has nine, expert has I think 32. Advanced only has six because I decided to switch right over to developer. Microsoft pretty much got rid of web macros and the whole web design stuff with Access, so I decided to cut the advanced series short and go right to developer. We are in level 11 of developer right now.

I strongly recommend you build the databases with me on your own as you are watching the lessons. But if you get lazy like me, which I do from time to time, you can download the databases, both the test taker and the universal dialog box. Actually, it is part of the same database right now at that web page right there.

I am using Access 2016. I have the subscription, the Office 365. I am pretty sure everything I cover in today's class is the same going back to 2007. I do not know if the RGB function is in the older versions before that, like 2003 and before. They do colors differently. But if you have 2007 and up, you should be okay. I know they are transitioning to 2019 this fall even though it is currently August of 2018. They are always a year ahead with their version numbers. As long as you have the subscription model, it should be pretty much the same. I strongly do recommend it.

Let us take a look at exactly what is covered in today's class.

In lesson one, we are continuing on with the test taker database that we started building in Access Developer 9 and worked with in Developer 10. We have a couple more enhancements we are going to do with some new stuff, new techniques, and a couple of new functions. We are going to hide the display button. We are going to hide the begin test button. We are going to show "Question one of ten." We are going to learn how to see if another form is open and, if so, we can then do things like close it or modify it. We will learn how to cascade close multiple forms, so if this form closes, then this form closes, then that form closes. There are lots of new little techniques in here. As I said before, even if you are not building the test taker database to use, build it as a test database, build it as something to learn these techniques because the stuff that I am teaching you, you will eventually want to use in your database.

In lesson two, we are going to add some timers to our test form. We are going to track the start time and the end time of the test and the start and end time for each question, so you can see how long it took them to answer each question. We are going to set a maximum time they have to take the test, so imagine a situation where they only have one hour to take the test. You can have the test say, "That is it, times up, you are done after an hour. Put your pencils down."

Again, you may not be building a test taker for your personal uses, but this has applications in all kinds of different databases. If you are doing telemarketing, you can have your people track how long they are on the phone. You can track your inventory people and see how long they have taken to check products and all kinds of uses for this kind of stuff.

We have done a little bit with timers before and with dates and times, but I am going to bring it all together in a nice lesson right now for you.

In lesson three, we are going to switch gears. We are still going to work in the test taker database, but we are going to do something different. We are going to start building a universal dialog box. It is going to be our own version of the message box, and eventually it is going to incorporate the input box function too. I want to build a box that I can control every aspect of. I want to control the font, the colors, the prompt, the title, the different kinds of buttons, and all that stuff. We will put a timer on it, have it return a value to a form, and all those kinds of things. We are going to start building it today. I will show you how to get it set up, and then we will finish with it in the next class.

Thanks for watching.
Quiz Q1. What enhancements were added to the test taker database in this lesson?
A. Displaying question numbers, adding timers, and various interface improvements
B. Only creating new tables for test results
C. Only importing questions from Excel
D. Only building new reports

Q2. What is the universal dialog box?
A. A customizable message box that allows you to control fonts, colors, and more
B. A new type of table format in Access
C. A standard input box provided by Windows
D. A web-based macro replacement for Access forms

Q3. Why should you have completed Access Developer 9 and 10 before starting this lesson?
A. Because the test taker database was started in those levels and continues here
B. Because they cover unrelated website integration topics
C. Because they provide all of the VBA code for lesson 11
D. You do not need to take previous levels at all

Q4. Which function is mentioned as potentially unavailable in versions before Access 2007?
A. RGB function
B. DCount function
C. InputBox function
D. DateDiff function

Q5. What is one use of timers in the test taker database?
A. Tracking the duration of each test question and total test time
B. Sending email notifications after each question
C. Automatically grading the test
D. Importing new questions from external files

Q6. What technique is taught regarding forms in this lesson?
A. Checking if a form is open and closing multiple forms in sequence
B. Printing all forms automatically when closing the database
C. Changing the primary key of a form from VBA
D. Exporting forms to PDF

Q7. Which feature does the universal dialog box NOT initially include but is planned for later?
A. A timer to make the box disappear
B. Font and color control
C. Prompt and title customization
D. Multi-user simultaneous editing

Q8. Why is it recommended not to skip the Advanced series before starting Developer level classes?
A. Because important topics like form colors and the RGB function are covered there
B. Because it teaches how to use cloud-based macros
C. Because it includes all of the report design templates
D. Because it is required by Microsoft certification

Q9. What advice does Richard give regarding building the databases from the lessons?
A. Build the databases along with him to reinforce learning, or download them if needed
B. Only watch the videos and never build the databases
C. Only use pre-built templates provided in Access
D. Focus on SQL lessons instead of Access VBA

Q10. What type of applications beyond test taking does Richard mention for timing features?
A. Telemarketing time tracking and inventory checking
B. Website visitor tracking
C. Calculating annual budgets
D. Creating animated graphics

Answers: 1-A; 2-A; 3-A; 4-A; 5-A; 6-A; 7-D; 8-A; 9-A; 10-A

DISCLAIMER: Quiz questions are AI generated. If you find any that are wrong, don't make sense, or aren't related to the video topic at hand, then please post a comment and let me know. Thanks.
Summary Today's video from Access Learning Zone continues our journey through the Microsoft Access Developer series. I am Richard Rost, and in this lesson, I will be guiding you through some important enhancements to our test taker database project, which we started back in Level 9 and continued working on in Level 10.

We will start off by wrapping up some features in the test taker database. For example, you will learn how to display which question the user is on out of the total, such as "Question one of two." I will show you how to use a timer within the database and incorporate several other enhancements to the test taker process.

A major part of this lesson will focus on the creation of a universal dialog box. Think of it as a supercharged message box that you can fully control. You will be able to determine the font and color settings, make it respond to timers, and control just about every aspect of how it looks and behaves. This project is starting today, but we will continue to improve it in future lessons. By the end, you will be able to display messages for a certain amount of time, change how the box appears, and harness capabilities beyond the standard MsgBox function.

If you have not completed Access Developer 9 and 10, I strongly recommend you do so before proceeding with this lesson. We got the test taker database started in Level 9 and added features in Level 10, so a lot of today's work builds on what we have done in those previous classes. If your only interest is in learning how to build the universal dialog box, you can focus on that section, but the rest of the content will be much more understandable with the background provided in the earlier developer lessons. Ideally, you should already have experience with all of my beginner, expert, and advanced Access classes, as these series provide the foundation on concepts like relationships, form design, reports, and macros. There is a lot of valuable content in those courses, and even if you feel ready for VBA, I do not recommend skipping them.

The developer series is all about using VBA programming to unlock powerful capabilities in Access. Just to recap, the beginner track contains nine lessons, and the expert track has around 32. I kept the advanced series shorter, with only six lessons, since Microsoft no longer focuses on web macros or Access web apps. That is why I moved directly into the developer content, and we are now up to Level 11.

Throughout this course, I encourage you to build these databases alongside me. This hands-on approach will help you truly understand the techniques we cover. Of course, if you prefer, you can also download copies of the databases directly from my website, including both the test taker and universal dialog box databases, which are currently combined in the same file.

I am presenting these lessons using Access 2016 with an Office 365 subscription. The material I cover should work in Access versions as far back as 2007, since the fundamental features and functions (such as RGB for working with colors) are included there. If you are running older versions, like 2003, certain functions may work differently, particularly with color handling. As long as you are on 2007 or any newer version, you should have no problems. With Microsoft now transitioning to Access 2019, just remember that their version numbers are always a year ahead, but if you have a subscription model the product should be up to date and a good fit for this class.

Here is a breakdown of what you can expect in today's lesson:

In the first lesson, we will put the finishing touches on the test taker database. We will explore a number of new Access and VBA techniques, like hiding and displaying buttons based on certain conditions. You will learn how to display a message like "Question one of ten" to help the user keep track of their progress. I will also teach you how to determine if another form is open in your database, so you can either close it or modify it as needed. Additionally, I will show you how to cascade the closing of multiple forms so you can control your user interface more precisely. While you might not build a test taker database for your own purposes, I recommend following along and building it as a practice tool. These skills apply to almost any Access project.

Lesson two focuses on implementing timers. You will learn how to track both the overall start and end times of the test, as well as the start and end times for each individual question, letting you measure how long it takes a user to answer each question. I will also guide you through setting a maximum time limit for the entire test, so you can have the system automatically end the test after (for example) one hour. These timer techniques have broad uses outside of testing, such as call tracking in telemarketing or managing timed inventory processes.

While we have touched on working with timers and tracking dates and times in earlier lessons, this class will bring everything together in a comprehensive way.

In the third lesson, we will change gears and begin building that universal dialog box. This box is designed to give you total control over how your custom messages are displayed. You will learn how to change the font, colors, prompts, titles, button types, and more. Eventually, we will even add input capabilities and have it respond to timers, returning values as needed. The structure for this dialog box starts today, and in the next class we will complete it by adding even more functionality.

You can find a complete video tutorial with step-by-step instructions on everything discussed here on my website at the link below. Live long and prosper, my friends.
Topic List Displaying "Question one of X" in forms
Adding a timer to a test form
Hiding display and begin test buttons
Detecting if another form is open
Cascade closing multiple forms
Tracking test and question start and end times
Setting a maximum test time limit
Building a universal dialog box form
Customizing dialog box font and color
Creating message box functionality with VBA
Preparing for input box features in dialog box
Article Welcome to this advanced Microsoft Access tutorial, where we will take your database skills to the next level by enhancing an interactive test-taker interface and introducing a powerful custom dialog box using VBA programming.

In this article, we will continue developing a test-taker database that tracks users as they answer questions. We will add new features, such as displaying which question the user is on out of the total number in the test, applying timers, and hiding or showing certain buttons dynamically. Additionally, we will begin designing a universal dialog box. This will be much more flexible than the standard message box, allowing you to control the appearance and behavior of dialog messages in your applications.

Let us start with the improvements to our test-taker form. First, you may want to display a message like "Question 1 of 10" to orient the user. This can be done by placing a label on your form and updating its caption property as the user moves through the questions. For example, you can use the form's current record and record count properties:

Me.lblQuestionCounter.Caption = "Question " & Me.CurrentRecord & " of " & Me.Recordset.RecordCount

You might also want to control the visibility of buttons depending on the test's status. For example, you can hide the "Display" or "Begin Test" button after the test has started, so the user cannot restart or view answers prematurely. To do this, set the buttons' visible property at the appropriate point in your code:

Me.btnBeginTest.Visible = False
Me.btnDisplay.Visible = False

Another useful technique is determining whether another form is open. This is valuable if you want to close multiple forms together or ensure that results are displayed in the correct sequence. You can use the SysCmd function to check for open forms:

If SysCmd(acSysCmdGetObjectState, acForm, "FormName") <> 0 Then
DoCmd.Close acForm, "FormName"
End If

For tracking timing, adding a timer to your test form allows you to see how long a user spends on the entire test and even on each question. You can record the start and end times using variables or fields in your table. When the user starts the test, capture the time:

Me.txtStartTime = Now()

When the user finishes or moves to the next question, capture the end time and calculate the duration:

Me.txtEndTime = Now()
Me.txtElapsed = DateDiff("s", Me.txtStartTime, Me.txtEndTime)

DateDiff gives you the difference in seconds, but you can also calculate minutes or hours as needed. By saving each question's start and end time, you can analyze exactly how long users spend per question. This feature is valuable in many scenarios, not just testing. For example, in a call center, you can track how long agents spend on each call. In inventory management, you can measure how long employees take to process items.

Next, let us shift gears to building a universal dialog box in Access. Unlike the standard MsgBox or InputBox functions, a custom dialog form lets you control every part of the message window. You can set the font, colors, displayed prompt, title, and add different button options. To set this up, create a blank form and design your layout with labels and buttons. To allow your VBA code to send text or change colors dynamically, reference the controls by name and set their properties, such as:

Forms!frmDialog.lblPrompt.Caption = "Are you sure you want to continue?"
Forms!frmDialog.lblPrompt.ForeColor = RGB(255,0,0) ' sets text to red

To add a timer that automatically closes the dialog after a few seconds, use the form's timer event. Set the Timer Interval property (in milliseconds, so for 3 seconds use 3000), and in the On Timer event write:

DoCmd.Close acForm, Me.Name

You can also have the dialog return a value to your calling form by writing a custom function that opens the form modally, waits for the user or timer to close it, and then retrieves the user's choice or input. For example:

Function ShowMyDialog(Prompt As String) As Boolean
Forms!frmDialog.lblPrompt.Caption = Prompt
DoCmd.OpenForm "frmDialog", WindowMode:=acDialog
ShowMyDialog = Forms!frmDialog.UserSelection
DoCmd.Close acForm, "frmDialog"
End Function

You can expand on this to include more advanced features such as returning string input, changing background colors, or offering different sets of buttons.

All the techniques described here are based on the use of VBA programming in Microsoft Access. They are applicable to versions from 2007 and later. If you are using an older version, be aware that some functions, such as RGB, may not be directly available.

As you follow along, it is highly recommended that you build these database features yourself, even if you do not need a test-taking solution specifically. Practicing with these examples will teach you skills you can apply in any Access application - for example, tracking the duration of a process, dynamically updating forms, automating interaction between forms, and providing custom dialog boxes to users.

By mastering these concepts, you will be well on your way to creating professional and user-friendly Access databases that go far beyond the basics.
 
 
 

The following is a paid advertisement
Computer Learning Zone is not responsible for any content shown or offers made by these ads.
 

Learn
 
Access - index
Excel - index
Word - index
Windows - index
PowerPoint - index
Photoshop - index
Visual Basic - index
ASP - index
Seminars
More...
Customers
 
Login
My Account
My Courses
Lost Password
Memberships
Student Databases
Change Email
Info
 
Latest News
New Releases
User Forums
Topic Glossary
Tips & Tricks
Search The Site
Code Vault
Collapse Menus
Help
 
Customer Support
Web Site Tour
FAQs
TechHelp
Consulting Services
About
 
Background
Testimonials
Jobs
Affiliate Program
Richard Rost
Free Lessons
Mailing List
PCResale.NET
Order
 
Video Tutorials
Handbooks
Memberships
Learning Connection
Idiot's Guide to Excel
Volume Discounts
Payment Info
Shipping
Terms of Sale
Contact
 
Contact Info
Support Policy
Mailing Address
Phone Number
Fax Number
Course Survey
Email Richard
[email protected]
Blog RSS Feed    YouTube Channel

LinkedIn
Copyright 2026 by Computer Learning Zone, Amicron, and Richard Rost. All Rights Reserved. Current Time: 6/27/2026 12:23:18 AM. PLT: 0s
Keywords: Access Developer, test taker database, VBA programming, universal dialog box, message box customization, dialog box timer, RGB function, form enhancements, cascade close forms, tracking test time, input box customization, font color control, Office 365  PermaLink  How To Create a Test Timer, Question Counters, and Custom Dialog Boxes in Microsoft Access