Commentary Managing Software Complexity: The Rule of Seven Don't try to increase the number of balls you can keep in the air; instead, reduce the number of balls needed to follow your software's logic.
Intermediate Open the Windows Color Dialog from VBA If you need to get Access color values from your users, this is the easiest way to do it.
Intermediate 5 Types of Settings for Microsoft Access Applications How you store settings in Microsoft Access depends on their scope. Understanding the scope of your settings is critical to ensure you store them the right way.
VBA Block-Level Scope in VBA...Does Not Exist VB.NET and VBA may look the same, but there are some important differences. This is a little-known feature of VB.NET that I really wish was available in VBA.
Intermediate Karl's Catalog: A Checklist of Access Best Practices Karl Donaubauer's checklist of Microsoft Access best practices offers a wealth of information to beginners and professional developers alike.
Hidden Features HOW TO: Run Scheduled Tasks with Microsoft Access This underused MS Access command-line argument opens up a whole new world of possibilities when it comes to scheduling recurring tasks in Access.
Form Design 5 Ways to Set a Default Font on Microsoft Access Forms If you don't like the default fonts in MS Access, you don't have to change them one control at a time. Here are 5 techniques to simplify the task.
SQL T-SQL ISNULL() vs. VBA IsNull() vs. Jet IS NULL vs. Access VBA Nz() How do I check thee for NULL? Let me count the ways.
Class Modules Great Intro to Class Programming in VBA Former Access MVP Ben Clothier's primer on class programming in VBA should be required reading for all Access developers.
VBA Philipp Stiefel on VBA Compilation Is VBA an interpreted language? Or a compiled language? Or something in between. Philipp Stiefel shines light on the topic for us.
VBA Avoiding Overflow Errors When Defining Calculated Constants Overflow errors are usually straightforward. But what about when you get an overflow assigning a value of 1 to a Long integer?
Hidden Features Declaring and Initializing Variables in the Same Line in VBA You can't declare and initialize a variable in a single code *statement* in VBA, but you can do it in a single *line* of code with this handy trick.
Class Modules Caching Object Instances in VBA Classes Simplify the object initialization code in your class modules without sacrificing performance using this easy technique.
Form Design Add a Custom Right-Click Menu to an Access Control It's easier than you might think to add a right-click menu to a control on your Access form.
Intermediate The IIf() Function vs. The IIf() Statement They may look identical, but there is a very important difference in how they get evaluated.
Intermediate How to Remove the Time Portion From a Date Variable in VBA In this article, I run a series of experiments to explore how different time-stripping approaches work in VBA.
SQL Server 3 Gotchas of the SQL BETWEEN Statement The SQL BETWEEN statement produces very readable condition expressions. But developers of all skill levels can still get into trouble with it.
COM High Level Overview of COM This whirlwind tour of the Component Object Model technology will jump start your journey of automating Excel from VBA in Access.
Defensive Programming Frictionless Validity Checks Let's apply the concept of frictionless development to the defensive programming technique of data validity checks.
Technical Debt Storing Local Table Data in a Front-End Access Application If you're thinking about storing local data in your front-end Access application, make sure it follows these 4 ground rules.
Intermediate 4 VBA PowerShell Functions Microsoft Access MVP Daniel Pineault provides four easy-to-use routines for integrating PowerShell with VBA.
Defensive Programming Data Validity Checks Increase the quality of your existing data by running it through a series of validity checks and showing your users the results.
Intermediate CurrentDB and the "Object invalid or no longer set" error Misuse of the CurrentDb function is a common cause of the "Object invalid or no longer set" error. Are you using it safely?
Intermediate 4 Ways to Automate Sending Emails from Microsoft Access Manually sending a single email from an email client is easy. Automating email sending, by contrast, is deceptively hard.
Intermediate How to Construct a Bit Mask in VBA What's the safest way to construct a bit mask in VBA? Your preferred approach may be more dangerous than you realize.