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 > D55 > Lesson 0 < D55 | Lesson 1 >
Welcome

Access Developer 55: Dark Mode Theme System


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

In this class, we introduce the process of building a complete dark mode system for Microsoft Access, starting with the creation of a flexible settings table to store color palettes for forms, sections, and controls. We will discuss techniques such as using array lists to manage objects, looping through forms and controls with reusable code, and capturing and applying appearance settings across an application. We will also talk about updating both open and new forms with the selected theme, controlling the Access workspace's appearance, and setting up a theming system that can be customized further.

Navigation

Keywords

Access Developer, dark mode, theming system, color palette settings table, hex colors, light mode switch, array list forms, reusable code, looping forms controls, apply properties, workspace background, theme settings, open forms update, button gradients,

 

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 Welcome
Get notifications when this page is updated
 
Intro In this class, we introduce the process of building a complete dark mode system for Microsoft Access, starting with the creation of a flexible settings table to store color palettes for forms, sections, and controls. We will discuss techniques such as using array lists to manage objects, looping through forms and controls with reusable code, and capturing and applying appearance settings across an application. We will also talk about updating both open and new forms with the selected theme, controlling the Access workspace's appearance, and setting up a theming system that can be customized further.
Transcript Welcome to Microsoft Access Developer 55, brought to you by AccessLearningZone.com. I am your instructor, Richard Rost.

In today's course, we are building a complete dark mode system for Microsoft Access from the ground up, starting with a flexible settings table and learning how to store color palettes for every form, every section, and every control in your database.

Along the way, you will pick up some powerful techniques like using array lists to dynamically manage objects, writing reusable code to loop through forms and controls, and safely capturing and applying properties across your entire application.

We will then bring it together by creating a system that lets you switch between light mode and dark mode instantly, updating every form that is open and making sure new forms automatically follow the current theme.

From there, we will go a step further and tackle the Access workspace itself so you can control the look and feel behind your forms and really give your database that polished, professional appearance.

By the time you are done, you will not just have a dark mode, you will have a customizable theming system that you can extend however you want. More importantly, you will understand the techniques behind it so you can apply them to all kinds of advanced interface features in your own projects.

Of course, I recommend you take all of my classes in order and that you do not skip levels. Do not skip levels. Sometimes, people pick up courses just because they want just the dark mode stuff, for example. If that is the case, you should obviously know the material covered in my beginner, expert, and the first couple of developer classes, as well as some VBA basics. You should have an understanding of events and form logic and some basic familiarity with SQL, select and insert, and recordsets.

If you need to brush up on any of these topics, go to my website, use the search bar, type in the topic that you need, and you will find a video for it.

It is currently April of 2026, so the version of Access that I am using is closest to Access 2024. I am using a Microsoft 365 subscription. This should work back to at least Access 2007. These techniques should be the same for all of those versions.

If you have questions regarding the material covered in today's class, scroll down to the bottom of the page that you are on and post your questions there. Take a minute to read through any other questions that might be there because chances are your question might have been answered already.

The nice thing about the website is the way that I just recently redesigned it so every video has its own Q&A page below it. We are sure that you are talking about the right video. People who have not taken this course cannot see it, so you can feel free to post source code or whatever you want.

If you have a general Access question that is not related to today's class, then I ask that you post it in the general Access forum so that everybody can benefit from the answers instead of just the people that took the class.

Now, let us take a closer look at what is covered in today's course.

In lesson one, we are going to lay the foundation for our dark mode system by building the settings table that stores all of the colors for your forms, sections, and controls. I will show you how to design that table properly, why we use hex colors instead of RGB, and how to generate a list of all of the forms in your database using an array list so we can work with them efficiently.

In lesson two, we are going to build the engine that captures and saves your form's appearance. You will learn how to loop through every section and every control on a form and read their color properties and then store those properties in the table. We will also set up reusable functions and clean up our code structure so everything is organized and easy to expand.

In lesson three, we are going to bring everything to life by switching between light mode and dark mode across your entire database. We will write the code to apply those saved settings back to your forms, loop through all of the open forms, and make sure that new forms automatically follow the current theme so your interface stays consistent.

In lesson four, we are going to take it one step further and fix that big, bright Access background that sits behind your forms. I will show you how to create a full background layer that matches your dark mode, manage its behavior with your theme settings, and also cover a couple of useful enhancements like event handler shortcuts and restoring button gradients.

That is what is covered in Developer 55.

Now sit back, relax, grab your cup of coffee, and get ready for lesson one. Remember, watch it once through and then follow along a second time with me.

Here we go.
Quiz Q1. What is the primary goal of the course described in the video?
A. Learning basic Microsoft Access navigation
B. Building a customizable dark mode system for Access
C. Designing tables and relationships in Access
D. Creating reports in Access

Q2. What database object is first modified in lesson one to start the dark mode system?
A. Query
B. Report
C. Settings table
D. Macro

Q3. Why does the instructor recommend using hex colors instead of RGB for the settings table?
A. Hex codes are easier to read in VBA
B. Hex codes take up less storage space
C. Hex codes are more universally compatible and easier to store as strings
D. RGB formats are not supported in Microsoft Access

Q4. Which technique is introduced to manage all forms efficiently in the course?
A. Using SQL scripts
B. Exporting to Excel lists
C. Using array lists to dynamically manage objects
D. Manual listing of forms

Q5. What is the purpose of looping through every section and control on a form in the dark mode engine?
A. To check for errors in controls
B. To count the number of controls
C. To capture and save color properties for theming
D. To delete unnecessary controls

Q6. When switching themes, what must the system ensure according to the course?
A. Only main forms update to the new theme
B. New forms automatically follow the current theme
C. Only buttons change color
D. Each control must be updated manually

Q7. What additional UI area is addressed in lesson four that often disrupts the dark mode appearance?
A. Navigation pane
B. Data tables
C. Access workspace background behind forms
D. Report print preview window

Q8. What type of code approach is encouraged for theme management in this course?
A. Hardcoding properties into each form
B. Reusable functions and organized code structure
C. Copy-pasting code between forms
D. Using only macros, not VBA

Q9. For questions specifically about the course content, where should students post them according to the video?
A. The general Access forum
B. The video's Q&A page on the website
C. Email the instructor directly
D. Social media pages

Q10. What prerequisite knowledge does the instructor recommend before taking this class?
A. Only knowledge of running Access
B. Beginner, expert, developer courses and VBA basics
C. Just basic form design proficiency
D. No prerequisites are required

Answers: 1-B; 2-C; 3-C; 4-C; 5-C; 6-B; 7-C; 8-B; 9-B; 10-B

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 focuses on building a complete dark mode system for Microsoft Access from scratch. In this Developer 55 class, I will show you how to establish a flexible settings table that allows you to store color palettes for every form, section, and control throughout your database. This foundation is what enables full customization and theming in Access.

You will learn several advanced techniques in the process. I will demonstrate how to use array lists to dynamically manage the objects in your application. We will write reusable code that can loop through forms and controls, and I will show you how to reliably capture and apply properties across multiple parts of your database. This ensures changes are made systematically and efficiently.

After we set up the underlying architecture, you will build a system that lets you switch instantly between light and dark modes. This will update every currently open form and ensures that any new forms follow the same theme so your entire interface remains consistent. We will then address the appearance of the main Access workspace, letting you control the background behind your forms for a more unified and polished look.

By the end of this course, you will have more than just a simple dark mode option. You will have a fully customizable theming infrastructure that you can adapt and extend for any style you want. Even more importantly, you will understand the strategies and programming methods behind it, which you can apply to other advanced interface customization tasks in your own Access projects.

Before taking this class, I recommend that you have worked through my previous courses in order. It is important not to skip levels, even if you are just interested in dark mode, because you need a foundation in Access development. Make sure you are comfortable with form events, basic VBA, and understand concepts like using SQL, recordsets, and the basics of form logic. If you need to review any specific skills, you can always visit my website and use the search feature to find helpful tutorials on those topics.

For this video, I am using Microsoft Access 2024 as part of a Microsoft 365 subscription. However, the techniques shown here are compatible with versions going back to Access 2007, so you should be able to follow along regardless of which version you are using.

If you have questions about the content in this course, you can scroll down to the Q&A section located right below this video on my website. Check through the existing questions first to see if your topic has already been covered. Only registered students for each course will see and be able to contribute to these Q&A sections, so you do not need to worry about posting source code or details. For general Access questions not related to this class, please use the general Access forum so everyone can benefit from the discussion.

Here is a brief overview of what we will cover in the lessons:

Lesson one establishes the settings table that will store all color values for your forms, sections, and controls. We will talk about the structure of the table, why hex colors are better than RGB for this context, and how to automatically generate a full list of forms in your database using array lists to make future management easier.

In lesson two, we build the core engine that captures your form's visual settings and saves them. You will learn to loop through every section and control on your forms, record their color properties, and save all this data to the table. This lesson also covers how to create reusable code and keep everything organized for future development.

Lesson three shows how to take these stored settings and use them to switch your interface between light and dark modes. You will write routines to apply the themes across all the open forms and guarantee that any newly opened forms automatically match the current theme for a seamless user experience.

Lesson four looks beyond the forms themselves to address the default Access workspace background. I will demonstrate how to set up a custom background that matches your chosen theme, and you will learn some advanced techniques, such as creating event handler shortcuts and how to restore gradient effects for buttons if you want them.

That is what we cover in Developer 55. Grab your coffee, get comfortable, and follow along as we step through each lesson. I always recommend watching each lesson first, then working through the examples yourself as you replay the material.

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 Building a settings table for dark mode colors
Storing color palettes for forms, sections, and controls
Using hex colors instead of RGB values
Generating a list of all forms with array lists
Efficient management of forms using array lists
Capturing and saving form appearance properties
Looping through form sections and controls for properties
Storing color properties in a database table
Setting up reusable functions for theme management
Organizing and cleaning up VBA code structure
Switching between light mode and dark mode instantly
Applying saved theme settings to open forms
Ensuring new forms follow the current theme
Creating a themed background layer behind forms
Managing Access workspace appearance in dark mode
Controlling background layer behavior with theme settings
Adding event handler shortcuts for theming
Restoring button gradients in themed forms
Article Creating a dark mode system for Microsoft Access can give your application a modern, user-friendly appearance while helping users reduce eye strain. In this tutorial, I will show you how to set up a fully customizable theming system from scratch. You will learn how to store and apply sets of color values - light or dark - to every form, section, and control in your database. This approach will give you both flexibility and control, letting you expand the theming system however you like.

We start with a settings table that holds all color data. Structuring your table properly matters, so let us talk about what to store. Each palette entry should identify the form, section, or specific control it applies to, along with the property being set (for example, BackColor or ForeColor) and the color value itself. We use hexadecimal color values (such as #222222 for dark gray) rather than Access's default RGB (Red, Green, Blue) numbers, since hex codes are easier to manage and more universal. If you want, you can write a simple VBA function to convert between hex and RGB values.

For example, your settings table might look something like this:

SettingID | ThemeName | FormName | SectionName | ControlName | PropertyName | ColorHex
1 | Dark | frmMain | Detail | | BackColor | #222222
2 | Dark | frmMain | | btnSave | BackColor | #333333
3 | Light | frmMain | Detail | | BackColor | #FFFFFF

With this structure, you can store different appearance values for each part of every form in both light and dark themes.

Next, generating a list of all forms in your database is essential for systematic appearance management. Using a VBA ArrayList makes it easy to assemble and manipulate lists of objects. You can loop through the AllForms collection to gather form names and then work with them dynamically. Here is an example of how you might do that:

Dim formList As Object
Set formList = CreateObject("System.Collections.ArrayList")
Dim obj As AccessObject
For Each obj In CurrentProject.AllForms
formList.Add obj.Name
Next

This allows your code to process or update every form as needed.

Now that you have your settings table and list of forms, the next step is to build the engine that captures and saves your application's appearance. Use a loop to scan each section and control of a form, read the relevant property values (like colors), and write them to your table. You should encapsulate this logic in reusable VBA procedures, such as SaveFormAppearance(formName, themeName), to keep things organized.

Here is a simplified illustration of how you might loop through all controls and store their color properties:

Dim ctl As Control
For Each ctl In Me.Controls
' Only process controls that have color properties
If HasColorProperty(ctl) Then
' Save property (example: BackColor)
SaveColorSetting Me.Name, ctl.Name, "BackColor", ctl.BackColor, "Dark"
End If
Next

You will need a helper function like HasColorProperty to determine if a control supports the property you want to store. The SaveColorSetting subroutine would then insert or update the setting in your settings table.

Once the color settings are stored, switching between light and dark mode is a matter of reading those settings and applying them to every open form. To do this, write a routine that loops through all open forms, checks the current theme, and updates each section and control based on the saved values. Make sure to include logic that applies the current theme to forms as they open, not just those that are already open. This keeps your interface consistent at all times.

For example, you might have a ChangeTheme(themeName) procedure that reads the right settings and loops through all open forms to update them immediately. You can call this procedure from a button on your main menu or any other place where users choose their preferred appearance. You may also use the Form_Open event to make sure new forms pick up the current theme automatically:

Private Sub Form_Open(Cancel As Integer)
ApplyTheme Me.Name, GetCurrentTheme()
End Sub

One important detail in creating a true dark mode experience in Access is handling the workspace area, which is the blank area behind your forms. By default, this area remains white or gray, contrasting with your darker forms. To address this, you can create a neutral background form that fills the application window and matches your color theme. Make sure this background form opens first and sits behind all other forms. You can also set its color using the same theming routine you apply elsewhere.

Finally, refine your theming with small enhancements. For example, restore standard button gradients if your color choice removes visual clarity, or use generic event handlers to cut down repetitive code. Structuring your code with modular procedures makes upgrades and adjustments easier in the future.

By following this approach, you will have a professional, extendable theming system for Microsoft Access. Not only will you have dark mode, but you will also have learned techniques such as building settings tables, managing dynamic lists with ArrayLists, creating reusable VBA procedures, and hooking appearance logic into Access events. These skills will serve you well as you develop more advanced interface features for your own projects.

To get the most out of this process, make sure you already understand Access form events, basic VBA coding, SQL statements, and recordsets. If you need to review these, there are many resources available online to help you catch up.

With these fundamentals established, you are ready to dive in and start building your own Access dark mode system. Enjoy the process and feel free to customize everything to best fit your application's needs.
 
 
 

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: 4/30/2026 3:30:42 PM. PLT: 1s
Keywords: Access Developer, dark mode, theming system, color palette settings table, hex colors, light mode switch, array list forms, reusable code, looping forms controls, apply properties, workspace background, theme settings, open forms update, button gradients,  PermaLink  How To Build a Complete Dark Mode and Light Mode Theme System for Forms in Microsoft Access