Code Library weArrowKeyNav Class Do you want the up and down arrow keys to move to the previous and next records in a continuous Access form? Here's how to do that with only two lines of code.
Code Library Get Top Form By Control How do you return the top form for an arbitrary control instead of the first subform that comes your way?
twinBASIC Weekly Update twinBASIC Update: May 16, 2021 Highlights include stability improvements for the twinBASIC compiler and the YouTube release of my hourlong twinBASIC presentation at DevCon Vienna.
Code Library Microsoft Access: Check if Form Object is a Subform How do you check if the form object is a subform in Access without triggering a runtime error? Hint: this is a trick question.
Code Library Get Form By Control Let's use recursion and the TypeOf...Is expression to get the first form parent of any control on our form.
Advanced VarType in VBA The VarType function lets you determine the underlying type of a variable. How does it fit in with TypeName and TypeOf?
Advanced TypeName vs. TypeOf You can check the type of a variable in VBA using TypeName or TypeOf. But do you know when to use which? And why? Let's explore.
Events AddNew Increments AutoNumber Fields Thanks to Ben Clothier, we've got another improvement to our Arrow Key Navigation class.
Events ComboBox Dropped Down State Overriding the up/down arrow key behavior improves the user experience on a continuous Access form. But what if the user drops down a combo box?
twinBASIC Weekly Update twinBASIC Update: May 9, 2021 Highlights include support for a new Attribute syntax, ActiveX DLL registration via regsvr32, and PredeclaredID for twinBASIC classes.
Events Many Objects, One Class Module Check out this trick for reducing boilerplate code: maintain a private collection of objects that are instances of the class itself.
Hidden Features Debugging Private Procedures After more than 14 years as a VBA developer, I recently discovered that you can debug private procedures without temporarily making them public!
Events ArrowKeyNav Presentation A list of resources and further reading to support my presentation on Navigating Continuous Forms using WithEvents.
Advanced Handling Multiple Control Types in a WithEvents Class Using WithEvents to subclass form controls is a powerful technique. Here's one way to handle multiple control types in a single class.
Advanced Using WithEvents to Encapsulate Event Handling Code You don't need to call the event handler for every control to handle its events. Instead, you can use WithEvents to encapsulate that code in a class module.
Conventions Beautiful Blocks of Boilerplate Using the colon character to join multiple lines of code all willy-nilly can lead to messy code. But, used judiciously, it can create beauty from chaos.
twinBASIC Weekly Update twinBASIC Update: May 2, 2021 Highlights include C-style block comments, support for additional Rubberduck annotations, and With blocks for UDTs.
Events The ArrowKeyNav Routine Enable Excel-like navigation in your continuous forms by overriding the default behavior of the up and down arrow keys.
Basic KeyCode and Shift Arguments The KeyDown and KeyUp events include KeyCode and Shift arguments to identify which keys the user pressed. Let's explore those arguments in more detail.
Basic Handling Keyboard Events in Access This beginner article will step you through the process of how to begin writing code that runs when a user presses a key on the keyboard.
Basic Navigating Continuous Forms If Up is left and Down is right, you must be navigating a continuous form in Microsoft Access.
Advanced Raising Custom Events in VBA This quick tutorial will have you writing custom events in VBA in no time.
Basic Event-Driven Programming in VBA Event-driven programming may sound complicated, but the concept is really quite simple.
Basic The DRY Journey Don't Repeat Yourself. It's the programmer's mantra. But how do you achieve it in VBA?
Professional Development Access DevCon 2021: Day 2 If you weren't able to make it to virtual Access DevCon Vienna 2021, here's what you missed on Day 2.