Free Lessons
Courses
Seminars
TechHelp
Fast Tips
Templates
Topic Index
Forum
ABCD
 
Home   Courses   TechHelp   Forums   Help   Contact   Merch   Join   Order   Logon  
 
Home > TechHelp > Directory > Access > Quick Queries > QQ92 < QQ91
Quick Queries #92
By Richard Rost   Richard Rost on LinkedIn Email Richard Rost   44 minutes ago

Is Microsoft Access Still Worth Learning in 2026?


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

In Quick Queries 92, we tackle the question: Is Microsoft Access still worth learning in 2026, and does it remain relevant for developers, consultants, and small business owners? I discuss Access's future, Windows' ongoing importance, and address privacy concerns. We will talk about naming confusion between form controls and variables, automating Excel imports, managing check boxes on continuous forms, best practices for storing databases, writing and importing text files, and user permission controls. Additionally, we discuss thumbnail design choices for videos, tips for VBA window management, and recommendations for printing wide reports. Member questions from YouTube and email are also answered throughout.

Prerequisites

Links

Recommended Courses

Up Next

Learn More

FREE Access Beginner Level 1
FREE Access Quick Start in 30 Minutes
Access Level 2 for just $1

Free Templates

TechHelp Free Templates
Blank Template
Contact Management
Order Entry & Invoicing
More Access Templates

Resources

Diamond Sponsors - Information on our Sponsors
Mailing List - Get emails when new videos released
Consulting - Need help with your database
Tip Jar - Your tips are graciously accepted
Merch Store - Get your swag here!

Questions?

Please feel free to post your questions or comments below or post them in the Forums.

KeywordsIs Microsoft Access Still Worth Learning in 2026? - QQ 92

TechHelp QQ Quick Queries, Is Microsoft Access still worth learning in 2026, AccessLearningZone.com, VBA memory variables vs form controls, Excel import automation, continuous forms check boxes, database storage location best practices, writing text files VBA, user permissions forms, audit logging VBA, User Level Security, split database frontend backend, scaling wide reports, VBE window split, TempVars, Windows tracking privacy, Access with SQL Server

 

 

 

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 Quick Queries #92
Get notifications when this page is updated
 
Intro In Quick Queries 92, we tackle the question: Is Microsoft Access still worth learning in 2026, and does it remain relevant for developers, consultants, and small business owners? I discuss Access's future, Windows' ongoing importance, and address privacy concerns. We will talk about naming confusion between form controls and variables, automating Excel imports, managing check boxes on continuous forms, best practices for storing databases, writing and importing text files, and user permission controls. Additionally, we discuss thumbnail design choices for videos, tips for VBA window management, and recommendations for printing wide reports. Member questions from YouTube and email are also answered throughout.
Transcript Is Microsoft Access still worth learning in 2026? Or are you wasting your time on quote unquote old technology? Welcome to another TechHelp Quick Queries video brought to you by AccessLearningZone.com. I'm your instructor Richard Rost.

Today we're going to talk about whether Microsoft Access is still a smart investment for developers, consultants, and small business owners. We'll look at where Windows fits in and what all this tracking talk really means - that Windows is tracking you - and why I believe Microsoft Access still has a very long future ahead of it.

We've also got questions and comments from YouTube, my website forums, emails, and lots of other places. Topics include confusing variables and form controls, automating Excel imports, check boxes in continuous forms, where to store your databases, writing text files, and controlling what users can see based on their permissions. We'll also discuss why I made five different title slides for this week's episode.

Alright, let's get to it.

Starting off today we've got Chuck, one of my Silver members. He's trying to pull a Windows computer name and the username with the environment function and the environment. But he ran into some confusion between a local memory variable that he was declaring and a text box on the form.

The code really wasn't the problem. The issue was that Access wasn't automatically connecting the variable he declared with the form control he wanted to display it in. So he's got ADUser equals this, and this is perfectly fine to get the computer name and the username. He said he declared ADUser as a string at the beginning of the On Load event. But ADUser is also the name of the text box, and that's the problem.

Let me hit a little back and forth here. If you want to use the text box, then you have to say Me!ADUser. I personally, in this situation, recommend you call them different things. Don't use the same name for a variable and a text box if you can help it. This is one of those things that trips up every beginner VBA programmer at some point when you're first learning it.

A memory variable and a form control are not the same thing, even if they have the same name. If you say Dim ADUser As String, you're creating a little bucket in memory. You're not talking to the text box on the form. If you want the text box to show the user, then you have to write it like this. The bang symbol indicates this is a field on that form. I recommend using dots for properties, like Me.Caption.

Personally, I like giving controls and variables different names so Access doesn't have to guess what you mean because Access guesses about as well as a foreigner at a charity auction.

Chuck eventually got it rebuilt and working. We changed the text box to ADUserText. I'm not a big fan of underscores in Access. I used to be a C programmer, and in C we used underscores for everything, but in VBA I don't like it. But that's okay; they work just fine. Like I said at the end of this thread, I don't know how many times I pulled my hair out over a specific problem and decided to start over from scratch, doing pretty much the same thing and the problem goes away. So the point: try not to declare variables that are the same names as controls on your form, and that'll save you a lot of hairs being pulled out.

It's an excellent question, Chuck. It's definitely a beginner VBA programmer mistake that a lot of people make, and now that we're past that, we can move on to other mistakes. There is no shortage of them; I've been doing this 30 years and I still make stupid mistakes sometimes, so don't worry about it. It happens.

Next up, Monica, Platinum member, has an Access database that imports and cleans five Excel files with one button click. Now she wants to take the human out of the loop and have the whole process run automatically every day. We got lots of different feedback from Sandra, Juan, myself, and Matt.

Basically, this is a great use case for automation. If you've already got one button that does all the work, you're 90 percent there; at that point you just need something to open the database and click the button for you, basically call that function. If you can keep Access running all the time and use a timer, that works. That's one solution; that's what I personally do because mine runs pretty much 24/7 doing other stuff, like for my website, sending emails and that stuff. So I just have it check the clock - okay, it's after 4 a.m., now it's time to run the backup, that kind of stuff.

You can also use Windows Task Scheduler to launch the database on a schedule, run the report, and then have Access quit when it's done. That's perfectly fine too; I used to do that years back. I don't currently have a video on using the Windows Task Scheduler, but if you guys want to see a video on that, let me know. Post a comment down below and I'd be happy to record one, because that's something I can see a lot of people using, so type in a comment right now and do it, and then you'll get a video.

Next up, we've got Neil, a Gold member. He was building a Receive Payments form like QuickBooks. He had a subform showing all of the unpaid invoices and wanted to put a check box next to each one so he could select exactly which invoices were being paid. But when he used an unbound check box, checking one checked every row, and when he tried binding it to a field, Access just beeped and wouldn't let him click it.

This is the perfect example of two common Access gotchas on a collision course. First, in a continuous form, you don't really have one check box per row; it only looks that way. Access is really reusing the same control over and over again to display different records. So if the check box is unbound, there's only one value behind it - it's that unbound control - right, so every row appears to change together. That's why they all check at once.

Neil then did the right thing and bound the check box to a Yes/No field in his Orders table, something like SelectedForPayment. That would allow each order to store its own checked or unchecked state. But then he had another problem - his subform was also based on a GROUP BY query that totaled all the line items for each invoice, and those aggregate queries are great for calculating totals, but they get rid of the ability to edit the records, so now it's read-only. When the record source is read-only, Access won't let you edit anything, including that check box, which is why you get that beep.

The solution is to separate the jobs: use an editable query for the subform so the check box can be updated, and calculate the invoice totals somewhere else, like in the form footer or a separate totals query. Once Neil removed the aggregate query from the subform, the check box worked exactly the way he wanted. This was actually a pretty good thread - I'll post a link to this one down below if you guys want to read the whole thing.

Next up, Sandra, one of our moderators, came across something in VBA that most people never notice: a Public Static Sub. Copilot told her that all the local variables inside that procedure - that subroutine - keep their values between calls, and she wanted to know if this was a performance trick she should be using more often.

That's a great question. This is one of those obscure VBA features that's technically valid but rarely a good idea. Normally, when a sub finishes running, all of its local variables disappear. The next time you run it, everything starts fresh. But if you declare the procedure as Static, every local variable inside that sub remembers its value from the last time it ran, as if every Dim statement secretly became Static.

Now, that sounds useful, but also it means that your procedure has memory. If the variable was set to 42 the last time the code ran, it's still going to be 42 the next time, unless you reset it yourself. That can lead to some very confusing bugs because your code is carrying around hidden state, and it's difficult to initialize that value inside that sub itself, which is the only place it is in scope anyway, so it's really weird.

If you really do need to remember a variable between calls, it's much better to declare just that one variable as Static and leave everything else as normal. That way it's obvious what you're preserving and why. Personally, I prefer using TempVars for this kind of thing because they're very easy to inspect and manage, and they've got lots of other benefits as well.

Specifically, if you're developing and you have a compile error, Static subroutines and Static variables and Public variables will lose their values, whereas TempVars tend to hold on to that between crashes, so that's always handy for developers especially. But, short answer: yes, Public Static Subs are real, and they're just one of those features that mostly sit quietly in the corner of the VBA language and don't get really invited to many parties because not hardly anyone uses them, so they're okay.

Plus, like I said, TempVars make Adam happy, so that's good. If you don't know what TempVars are, go watch this video. They're really cool and do lots of stuff. I like them, and so does Adam. Speaking of being cool and neat, you'll be cool and neat if you hit that like and subscribe button right now, so go do it.

Next up we got Ben, a Silver member. He wrote his own auditing routine in VBA - loops through every text box, combo box, and check box on a form, compares the current value to the old value, writes any changes to an audit table, and he wants to know if the code was clean and production worthy or if there were any red flags.

This code is right here. Let me zoom out; maybe you can get the whole thing. I don't know if you get the whole thing in there, but I'll put a link to this in the links down below. This is exactly the kind of project that makes you a better developer. He built a generic procedure that takes any form, scans all the controls, loops through all the controls, checks to see if the control type is a text box, a combo box, or a check box, and automatically logs who changed what from what value to what new value. That's pretty cool - solid design, very practical way to build a black box recorder for your database.

The core technique is very straightforward: every bound control on a form has a value (which is what the user sees now) and an OldValue, which was there before the edit started. If those two are different and the field was changed, Ben loops through all the controls, compares the two values, and writes a record to an audit table. Very nice.

A couple of things to watch out for, as Alex mentioned: error handling. If a control name is misspelled, if a field type doesn't match, or if the audit table is unavailable, you don't want the whole save operation to crash. Another thing here is Form.RecordSource - it could contain a query name or even an SQL statement, so keep that in mind for later if you ever want to restore changes or whatever.

But overall, it's a very good approach, great example of reusable VBA. Once you have something like this in place, your database can tell you exactly who changed what and when - it's basically like a flight recorder for your application. Especially for those users that say, I didn't do it, I didn't touch nothing. Yeah, sure, you didn't. If you want to learn more about stuff like this, I do have a track changes in data video. This video focuses on specific fields and specific tables, but you can easily expand it to do whatever you want.

Next up is Brian, a Platinum member. He asked a deceptively simple question: where should you store your Access databases on your computer? Program Files, Documents, a special folder? That led to a great discussion about backups, cloud syncing, and development vs production environments. There are tons of comments on this one, including a big lengthy one from me.

I'm not going to read it all here, but I'll leave a link down below so you can see that yourself. In a nutshell, this is one of those questions that seems basic but is actually very important.

First, don't put your databases in Program Files or in your Windows folder. Those locations are protected by Windows, and Access may run into permission issues trying to write temporary files, lock files, or other stuff that it needs while the database is open, so don't put them there.

I like to create my own Databases folder, like C:\Databases, or if it's on a network drive, Z:\Databases. That's where I keep my active projects; it's on my server. If you've got a second drive, even better. I have always tried to keep my data separate from my program and applications. It goes back to the early days of DOS and Windows. Your C drive is where your programs live; your D drive is where your data lives, even if it's a partition on the same physical drive. If you have to reinstall Windows and everything, your apps are okay, but your data still lives on its own partition, ideally. Preferably, keep those drives separate and have backups back and forth between them, but that's a whole separate discussion.

Then cloud syncing came up: OneDrive, Google Drive, Dropbox. Those are fantastic for backups, but I've done many videos on this - don't put your database there. They should not be used as a live location for your backend data file because if OneDrive decides to sync your ACCDB while Access has it open, you can end up with corruption and your database can be dead faster than a red shirt on an away mission. Use those services to copy backups, not to host the actual database that you're actively using.

This video talks about that in detail; I beat this thing to death. If you haven't watched this video yet, go watch it. This is very important. A lot of people think they can share the database by just sticking it in the Google Drive folder. No, no, no.

For a split database, the rule is simple: each user keeps their own frontend copy on their local machine. You can make a Databases folder for each user, like C:\Databases for everybody. On each user's machine, they'll have their own C:\Databases, and then if you have a shared system, the Z drive (Z:\Databases) is where your backend lives. You can put the frontend right on the desktop if you want, or in their Documents folder, that's perfectly fine too. The backend - where the tables live - should be on a stable network share or a server that's backed up regularly, and again, not synced through OneDrive or one of those services.

Short version: use your own trusted folder, keep your frontend local, keep your backend on a proper shared location, and make regular backups - lots and lots of backups. Remember, a backup that you haven't tested is just a theory. Test your backups. Restore. I had to restore something today in fact, one of my backups, and I'm glad that I'm quite neurotic about making backups. My PowerPoint presentation that I use for my slides was corrupted. PowerPoint is good at popping my PowerPoint slides (they get corrupted all the time because I put a lot of big graphics in them). We'll talk about some of my graphics in just a few minutes. But yeah, backup, backup, backup.

Alright, heading over to YouTube. JC Wynn says, Is the AI lady in the thumbnails a mainstay now? Not a big fan, to be honest.

Well, thanks for the feedback. That's actually a fair question. I started using the AI-generated office scenes with people in them when I began making more explainer videos instead of step-by-step walkthroughs. In a traditional Access tutorial, it's easy to put a screenshot of the actual Access form or report or query - whatever I'm working on - in the thumbnail. But some of those broader discussion videos don't always lend themselves to an interesting screenshot from the database itself.

If you look around YouTube these days, you'll notice that almost all successful thumbnails feature people, especially faces. That's not exactly a secret; faces tend to catch people's attention and generally lead to more clicks. I've noticed an uptick in clicks since I started using people in my slides in addition to just my pretty face. Honestly, since about 95 percent of my audience is male (I can see that from the YouTube statistics and from my own membership roles), I figured I'd use a friendly female office worker image to help draw a few more eyeballs to my videos. It's not meant to be provocative or distracting, just a consistent visual mascot, along with the little penguin that I hide in many of my thumbnails (a few of you have noticed). Yes, I love penguins.

At first, I initially chose the red dress because Microsoft Access is red, right? The "redheaded stepchild." I didn't specifically ask the AI to make her blonde, but once the first image came out looking good, I decided to use that as a basis for future thumbnails so there would be some consistency from video to video.

That being said, I am a numbers guy. Obviously, I'm a database nerd, right? So I trust the data. YouTube allows you to run thumbnail split tests. Right now, I'm comparing the AI office scenes with traditional Access screenshots. Here's one the members have access to right now that comes out Monday, I think, and here's one that started this morning. This one's been out since 9 a.m. this morning, it's currently 4 p.m. It's only got about 430 views and the office-setting one is just narrowly edging out the one with the actual picture of the Access form on there.

We'll see - it's got 13 days to run. They let it run for two weeks, which is enough time to get enough data for you to actually see if it's going to work or not. I'm going to go with the numbers. Honestly, it's easier for me to just put the Access screenshot on there if I've got a screenshot that makes sense for the video. Some of them don't. But I'll be honest, I'm here on YouTube to get more viewers, to get more eyeballs. So if this brings in a few hundred more views, I'm going to do this. Who knows, maybe I'll even try a few cover slides with my mug in a Starfleet uniform and see if those bring in some more views. I'm still experimenting at this point.

Bottom line - if the screenshot-based thumbnails perform better I'll stick with those; if thumbnails with people do better I'll continue using those, especially for explainer videos. If my own face wins, then you will all get to see more of me. At the end of the day, my goal is simple: to get more people to click on the videos so they can learn Microsoft Access. I do appreciate the feedback and I'm always open to adjusting based on what the audience responds to, of course. Let me know what you think. If you don't like the Access model, I want to hear about it. If you'd rather see close-up screenshots from the database, tell me that too. If you'd rather see me in a Captain Picard uniform yelling at a penguin, that's certainly an option.

Ultimately I'll go with whatever the data suggests and what the viewers ask for, with of course the most weight given to feedback from my members. They're the ones helping support the channel and keeping all of this going, so thank you, members.

You know what else we're going to do? I've put together a little poll; I want to get your input. What do you think - which slide picture do you like the best? We've got the basic Microsoft Access screenshot slide, we've got me standing in front of a classroom, we've got me in a Starfleet uniform (of course), and then we've got Woman #1 and Woman #2.

Here's the link right down here. I'll put a link to it down below; you can click on it and go to the poll page. Let me know which one you like and we'll add it to the results of the split test. And just like with politics, if you don't vote you can't complain. No, seriously, I would like your feedback, so either post a comment down below or visit the poll page or send me an email, or send me a Starfleet subspace message, whatever you want to do.

Speaking of that, right, text file video, we got a comment from Jade Dragon sharing a great example of doing the reverse of today's export: importing FedEx EDI invoice files into Access by breaking apart long fixed-width strings (say that 10 times fast: fixed width strings). They asked why FreeFile is needed and whether a recordset could be used instead.

I will be doing a separate video on importing, on reading in that data from the text file. Sometimes it's handy to write it out, sometimes you want to read it in. I cover all of that in my developer courses, but I'm going to do a short TechHelp video on reading in text files too.

This is a great real-world example: EDI files are a perfect case where you often have one giant line of text and your job is to slice it into fields. That's the import side. Now, FreeFile and a recordset are two totally different things. A recordset is how you read records from a table or query. FreeFile gives VBA an available file number so it knows which open text file you're reading from or writing to. You don't open the file as a recordset; you open the file using a file number, then you use the recordset to supply the data that gets printed into that file.

But yes, you absolutely can use a recordset; in fact, that's what you'd use if you wanted to loop through multiple customers and export each one. But you'd still need a file handle from FreeFile to actually write to the text file. The recordset is the data source; FreeFile is the open doorway to the file. You would open the file, then open the recordset, loop through all the records writing out to that file, and then close both when you're done. Good question.

Next up, same video, Gregory Jeffries mentioned that he's planning to use this technique to create configuration files - .ini files, config files, whatever. Absolutely, that's a perfect use case for text files. Once you know how to write plain text files from Access, you can create all kinds of config files, log files, etc.

In fact, I'll be doing a log file example, showing you how to open for append soon. It's a great way to store user-specific settings on someone's computer. For example, you might save their preferred printer, export folder, default report options, and other settings. Your database knows exactly what they like configured and how, if you don't want to set up a config table.

I usually take the approach myself of using a settings table (I've done some videos on that before), but sometimes a simple text file is the easiest solution, especially if another program also needs to read those settings or if you've got multiple databases and don't want to share tables between them. So, there are lots of different options. Again, this is just another tool for your toolbox.

Another comment from Jade Dragon about Access Day 2026, saying it would be great to meet some folks. You're absolutely right. One of the biggest reasons I enjoy going to Access Day and other Access-related conferences is getting to meet other Access developers and spend some time with people who do the same kind of work we all do. That's one of the reasons I was so disappointed at the Seattle event - I was sick most of the week, I just wasn't myself, so I missed out on a lot of the social interactions, the hallway conversations. I had a couple really good ones, but I just didn't hang out for the dinners and stuff afterward. I was in my hotel, NyQuiling myself to sleep.

But the presentations are always interesting, especially hearing from the Access team about what new features are coming. It's fun getting that preview before everybody else. To be honest, I personally don't usually learn a lot of brand new material because I spend so much time immersed in Access every day already. Every now and then I pick up some useful tips or techniques, but that's always a bonus. The real value for me is connecting with other developers, swapping stories, and talking shop with people who understand what we all pretty much do.

I hope to see you all at the next Access Day. Now we just need to convince them to hold it somewhere warm. Seattle in March is tough when it's sunny and beautiful here in Southwest Florida. That's like, okay, pack the warm clothes, get ready for some rain. It wasn't that bad this past year.

Next up we've got Akin, asking whether an Access report with 28 columns can be printed on a single page, similar to how Excel can scale a worksheet to fit everything on one sheet. Unfortunately, Access reports don't have the same kind of automatic "fit to page" scaling that Excel does. In Excel, you can tell it to squeeze everything onto one page, no matter how many columns you've got or how many rows, and it will zoom the output down automatically.

Access doesn't really work that way. If you want all 28 columns to fit, you can design the report to fit manually: switching to landscape orientation, reducing your margins, making the controls smaller, possibly using a smaller font. If your printer supports it, you can also use larger paper sizes: legal, tabloid, etc. With that many columns, though, you should ask whether your report is really in the best format.

If your goal is to see a wide grid of data, exporting to Excel is often the better solution, because Excel is specifically designed to handle lots of columns and can scale them much more effectively. Access is really, really good at building a data interface for entering data, editing data, storing all your data. But for designing certain things like printable outputs and charts and things like that, Word and Excel sometimes do better things than Access can - and that's by design.

Excel can handle tons of columns and print them much more effectively than Access can. So the short answer is no, Access won't automatically zoom your report to fit one page. You can make it fit by designing it that way, but for very wide reports, Excel is probably the better tool. If you do squeeze 28 columns on one page, you may need a magnifying glass or a VISOR courtesy of Geordi La Forge. Gotta stick my Star Trek references in there.

Next up, Xavier says: "Tip for your next quick query: sometimes in the VBE I use the Window > Split or by dragging the small split box to the right side of the code." That's definitely a fantastic idea! If you've got big, long code and want to be able to work on two different spots in the same module, you can go to Window > Split and that puts the splitter right here, see, so you can scroll up and down independently on both sides. You can be up at the top and down at the bottom. You can also grab this little guy right there - that's a splitter. Excel has got the same thing. Kind of cool.

What I find myself using a lot is up here: Window > Tile Horizontally or Vertically or Cascade. I like to often work side by side with two different modules. If you tile them, they're all going to open, which is annoying to me. By the way, close these down when you're done using them, because I've got some very, very big, very, very old databases that have - no joke - I might have a hundred modules open between the form modules and the public modules and all that stuff. Hold down Ctrl+F4 and that will close them automatically, one at a time, just repeating Ctrl+F4, which closes them. Then open the ones that you want; you can either go over here and find them in the navigation pane, or you can go to View > Project Explorer and open them from here. Here's the customer form - now maximize that - and then here's my global module. Now to work on just those two at the same time - since those are the only ones open - Window > Tile Horizontally or you can tile them vertically. Do the same.

I can work on both of them. I've got a tiny screen because I'm recording, so my windows are small, but on my big monitor I can make these really big. You can work side by side, because you can't open two copies of the Visual Basic Editor (which I wish you could; that would be nice). You can open two copies of the same database, but don't do that when you're designing. It's very, very bad. Also, someone mentioned to me earlier - I forgot all about this little button here - which switches it back to Access, and I put one up here to go back over to here. This is on the Quick Launch toolbar, so all kinds of cool little stuff in here that is barely mentioned. I don't use it all the time, just once in a while, I'm like, man, I wish I could see these side by side. Sometimes I'll even copy a whole module over to Notepad and put it next to it, usually if I want to copy some stuff that I did in another form.

Thanks, great tip, great reminder.

Next up, this user is asking if it's possible to control which users can see certain forms in a Microsoft Access database based on their permissions, in regards to my User Level Security videos. Absolutely, and that's exactly what these videos are designed to do. In the free User Level Security TechHelp series, I show you how to create a simple logon form with usernames and passwords, then once a user logs in, you can check who they are and decide which forms, reports, and buttons they're allowed to open. If they don't have permission, it simply displays "Access denied" and stops them from opening that form.

This works well for basic security, but keep in mind it only controls what users can do inside your forms, like which buttons they can click and stuff. If they can still get to the navigation pane, they can open objects freely and bypass those restrictions. My Simple Security video (which I believe I mentioned as a prerequisite in the other one) shows you how to hide the navigation pane, disable the ribbon, and distribute your database as an ACCDE file so they can't get into your design. That video covers a lot more too, and then if you want an even better solution, my Access Security Seminar goes much further. I teach how to create users and groups, hide or show buttons based on security level, control which forms and reports each group can access, build audit logs, and lock down the database as securely as Access can be.

Just remember, Access itself is not a secure storage receptacle for your data. The data is still out there and open if you're just using Access. That's why you want to store your data in something like SQL Server, a proper database server, and that's what this course shows you how to do. SQL Server is free, and I show you how to take your Access tables and put them in SQL Server so that's locked down, so if you've got sensitive data you don't want people getting to, you can still keep your Access front end, but you just put your data up in SQL Server. It's much more secure.

So, the short answer is: yes, you can control exactly what users can see, which forms and what buttons they can click, and that's the reason why people implement security in the first place. Watch all those videos and you'll be able to do that.

Finally today, we got a question that came in from David in Salt Lake City, Utah, one of my Gold members, sent this to me via email. He said, "I've seen a lot of YouTube videos saying that people are abandoning Windows 11 for Linux and that Windows is becoming more of a tracking system for Microsoft. Is Windows really losing popularity and what does this mean for the future of Microsoft Access?"

It's a great question. I've seen a lot of these naysayer videos on YouTube as well, and articles posted that say it's the end of Windows, Windows is doomed and Access is dead, etc. Take these with a grain of salt. YouTube tends to reward dramatic headlines - like we talked about with the title slides earlier - "Windows is dead" or "Is this the end of Windows?" Those get more clicks than "Windows continues to dominate desktop computing." "Access is the best Windows-based desktop database development tool you'll ever see" - I mean, it's not clickbait.

The reality is that Windows is still the standard operating system for both businesses and personal computers. It has been for decades, since Windows 95 at least, and I don't see that changing anytime soon. Yes, Linux is growing in popularity, especially among developers and tech enthusiasts. I'm surprised I haven't fired up a Linux machine myself in a long time, especially since their mascot is a penguin. I am the kind of guy who likes to tinker, and that's why I like Windows and Android and not the Mac ecosystem, which I consider like a walled garden where they control everything you can do. The majority of businesses and home PC users still run Windows.

As for tracking, to some extent every major tech company collects data: Microsoft, Google, Apple, Facebook, they all do it. In most cases, the purpose is to improve products and show you relevant advertising. Personally, I don't mind seeing ads related to things I'm actually interested in. I'd rather see ads for things I like, like Star Trek, science fiction, and computers, instead of random products that have nothing to do with me, like diapers or tampons or something I don't need. If you don't like that kind of tracking, turn it off. Windows and Google and the rest all have privacy settings that let you disable much of it; you still have control over how much information you share.

Generally, it's not a bad thing. I don't mind a little bit of tracking for advertising purposes and stuff like that. I enjoy being able to see my history in Google Maps. If my wife says we haven't been here in two years, I can pull it up and show that we were here just three months ago. The only time it's a problem is if you're the kind of person going for a drug deal behind the 7-Eleven at 3 a.m.

Bringing it back to Windows and Access - I don't see them going anywhere anytime soon. Windows definitely has a lot of life in it, especially now that, from what I've read, Microsoft is going back to basics. They made some major changes, like with Windows 8, completely revamped the operating system, and got rid of the Start Menu. Even I was mad about that. Now I think they're coming back around, listening more to the users, and adding features back in that people are demanding. I think we're going to start to see a shift more toward trying to keep the user experience better and keep the users happier.

As far as Access goes, it's got a lot of life in it still. Microsoft might not be pouring huge resources into it, but they are continuing to update it and add features. More importantly, countless businesses rely on Access applications every day. Millions of businesses run their day-to-day on Access, whether they have just an Access database for a small shop or they're using it as a front end for SQL Server. Those systems are not disappearing anytime soon.

In my opinion, for at least the next five to ten years (and probably beyond that), Access is going to remain the dominant desktop database development tool. If you need web or mobile services, the best approach is often a hybrid solution: keep Access as your front end, move your data to SQL Server (like I've been teaching), and then build additional front ends as needed. If you need a quick web app, spin that up. If you need something different, you can still keep Access as your primary database that connects to SQL Server and everybody can get what they need.

So, no, Windows isn't going anywhere, Access isn't going anywhere. In fact, if you need to build software quickly for a small business, there's still no faster and more productive combination than Microsoft Access running on Windows, and that's my opinion. Yes, I might be slightly biased because I've been doing this for 30 years with Windows and Access; ninety percent of my business is teaching Access databases. But I think that experience has also taught me what most small businesses want and what most solo developers out there my age want. Yes, my age, I'm 53. But, you know, still got a lot of life in me; people my age still have a lot of career left. People are working a lot later now: 65, 67.

So, if you've got a business and you're in your 50s and you know you have 15 to 20 more years of running that business, Access and Windows will do just fine. No reason to change. Now, if you're a 22-year-old entering the workforce today and you're looking at all these modern web stacks, Python, and all the new stuff coming out, then yeah, spend your time learning that. But even if you are a young developer today learning Python, JavaScript, all the modern tools, don't overlook Access and Windows. There are still millions of businesses running mission critical applications built with Access and Access + SQL Server combos. Many of those systems will still be in use for the next 10 to 20 years. Companies are going to need people who understand how to maintain, upgrade, and integrate those databases with newer technologies and web applications.

So learning Access isn't just about preserving some old system, like the COBOL programmers who had decades of work after COBOL systems stopped being developed. Access is still a valuable consulting skill that will continue to pay dividends for a long time to come. Trust me.

Excellent question, David. Thank you, and I hope this answers it for you. Basically, if you're my age, you're not going to have any problem running your business on Access and Windows well into your future. If you're young, there are going to be lots of businesses out there that need help with Access, Excel, Word, and SQL Server. So learn it.

If you want to be a consultant, if you want to get a big job working for some Fortune 500 corporation: first of all, good luck, but second of all, they might not need Access. Although there are lots of big corporations that have departments that can spin up a quick Access database, connect to the SQL Server, get the permissions they need, and do their job in an afternoon versus waiting six months for IT to put together something in the proper whatever.

So if you're going to hang out your shingle as a consultant, or you want to do work with small businesses, Access and Windows is still a perfectly viable solution. If a customer comes to you and says we need to be able to run our business, you can build them a database in a weekend. That's all I'm going to say about that.

Yes, I'll be revising my "Access is not Dead" video for 2026 coming very soon, because every day I get a Google alert that sends me an email anytime someone publishes an article or a video about Microsoft. I like to stay informed, and so I still see lots of companies trash talking Windows and trash talking Access, and it's just not fair, so I'll put them in their place when I can.

As always, I appreciate your comments on the situation, so chime in down below. Tell me what you think: Do you think Access and Windows have a future? What do you like and don't like about being tracked? I don't mind it. I like it when I see relevant ads pop up. I get a notification on Google or a Facebook ad shows up that says the philharmonic orchestra in Fort Myers is doing Lord of the Rings. I'm like, okay, yeah, definitely, I'm glad you know that I like Lord of the Rings. The new Star Trek series coming out? Sign me up.

Don't forget to stop by my website, check out the Captain's Log where I post whatever happens to be in my brain that day. Don't forget the title slide poll; go do that right now. Make sure you stop by my merch store; there's lots of stuff in there. Get your t-shirts, your mouse pads, and all that other stuff. Pick up a copy of my book on Amazon and stop by the forums on my website and join in the discussion there.

So today we learned that Microsoft Access is still worth learning in 2026, and it's still one of the fastest ways to build business applications. I challenge you to find another tool that will build a business application of this quality and with this amount of speed - aside from these AI tools that build stuff you don't even understand. If you want to learn how to build databases the right way, then Access is still the best tool on the market.

We also talked about keeping your variables and your controls straight, writing and importing text files, and controlling exactly what your users can see and do. Post a comment down below, let me know how you liked today's video, and send in your questions for next week's Quick Queries video.

That's going to be your Quick Queries video for today, brought to you by AccessLearningZone.com. I hope you learned something. Live long and prosper, my friends. I'll see you next time.
Quiz Q1. Why is it problematic to give a VBA variable and a form control (like a text box) the same name in Microsoft Access?
A. It makes the form load slower
B. Access might confuse the variable with the form control, leading to code errors
C. It increases the file size of the database
D. It causes Access to delete the control automatically

Q2. What is the recommended way to automate an Access process that is currently run via a button click?
A. Rewrite the entire process in SQL Server
B. Use a timer in Access or schedule the database with Windows Task Scheduler
C. Export data to Excel and use a macro
D. Set up an auto-run macro in the Access startup options

Q3. In a continuous subform, what happens if you use an unbound checkbox to select records?
A. Each checkbox acts independently
B. Only the first record can be checked
C. Checking one box will check all boxes because they share a single value
D. The form will crash

Q4. Why can't you edit records or checkboxes in a subform based on a GROUP BY (aggregate) query?
A. Aggregate queries are always faster but not editable
B. Aggregate queries are read-only, so controls bound to them can't be edited
C. GROUP BY only works with text fields
D. Checkboxes require special permissions in aggregate queries

Q5. What does declaring a procedure as Static in VBA do?
A. Makes it public so it can be called from anywhere
B. Keeps local variable values between calls to the procedure
C. Makes all variables in the database available to the procedure
D. Increases the performance of the procedure by optimizing memory

Q6. What is the main advantage of using TempVars over Static variables in VBA according to the video?
A. TempVars are faster to process
B. TempVars can be easily inspected and persist through compile errors
C. TempVars can store images and large files
D. TempVars automatically back up data

Q7. When building an auditing routine for tracking changes in forms, which property compares the old and new values of a control?
A. ChangedValue
B. DefaultValue
C. Value and OldValue
D. NewValue and PastValue

Q8. Where is the best place to store Access database files to avoid permission and corruption issues?
A. C:\Program Files or Windows folder
B. My Documents or a cloud-synced folder like OneDrive for active backends
C. A separate Databases folder (like C:\Databases or a network drive)
D. Any shared folder with no backup

Q9. Why is it risky to host your live Access backend file directly in a cloud-sync service folder like OneDrive or Dropbox?
A. Cloud folders limit user permissions
B. Cloud sync can cause file corruption if the database is open during sync
C. Sync services automatically delete files after 30 days
D. Access can't read from cloud folders

Q10. In a split Access database setup, where should the frontend and backend be stored?
A. Both frontend and backend in a cloud drive
B. Frontend local on each user's PC, backend on a stable shared server or network location
C. Both in My Documents
D. Frontend in Program Files, backend in AppData

Q11. What is the best use case for exporting data to Excel instead of trying to print a very wide Access report?
A. When the data has fewer than 10 columns
B. When you need to zoom in on the data
C. When you have many columns and want automatic scaling to fit a single page
D. When data security is not a concern

Q12. What does FreeFile do in VBA when working with text files?
A. Opens an Access recordset
B. Closes all open files
C. Returns the next available file number for opening a text file
D. Creates a backup of the database

Q13. What can you use VBA text file export techniques for, according to the video?
A. Writing configuration (ini) files or log files
B. Making SQL Server backups
C. Encrypting the database
D. Sending output directly to a printer

Q14. What is the main purpose of the User Level Security techniques described in the TechHelp Security videos?
A. To encrypt the database tables
B. To control which forms and reports each user can see or open based on their login and permissions
C. To make backups faster
D. To enable automatic updates

Q15. What is a major limitation of Access's internal security features?
A. They make the database slower
B. If users have access to the navigation pane, they can bypass most internal security controls
C. They can only be used on SQL Server backends
D. Users can't use forms anymore

Q16. Why might you want to move your backend data from Access to SQL Server?
A. Access cannot hold text data
B. SQL Server is always faster for all scenarios
C. SQL Server offers stronger data security and can limit direct access to the data file
D. You cannot have multiple users with Access

Q17. According to the instructor, why is learning Access still relevant in 2026 and beyond?
A. It is the only way to build mobile apps
B. Millions of businesses rely on Access, and there is ongoing demand for maintenance and integration with newer technologies
C. Web development has become obsolete
D. All other database platforms are too expensive

Q18. What is a good reason to learn Access even if you are a younger developer focusing on modern web stacks?
A. Opposing technologies attract more clients
B. No new systems are being created in Access
C. There are still many mission-critical Access systems needing integration, maintenance, and upgrades
D. Access is required for every IT job

Q19. Which of the following is a recommended practice for Access database backups?
A. Rely only on automatic Windows backups
B. Regularly test your backups by restoring them
C. Keep only one backup copy at a time
D. Store all backups in the same place as your live database

Q20. What does the instructor suggest drives YouTube clickbait titles about Windows and Access being dead?
A. Honest reporting
B. More clicks and views, not actual industry trends
C. Official announcements from Microsoft
D. End of product life

Answers: 1-B; 2-B; 3-C; 4-B; 5-B; 6-B; 7-C; 8-C; 9-B; 10-B; 11-C; 12-C; 13-A; 14-B; 15-B; 16-C; 17-B; 18-C; 19-B; 20-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 In today's Quick Queries video from Access Learning Zone, we're addressing the question: Is Microsoft Access still worth learning in 2026, or is it just outdated technology? As your instructor, I'll be offering my perspective on this, along with various practical questions and tips submitted by viewers and forum members.

We'll discuss whether Microsoft Access remains a smart investment for developers, consultants, and small business owners. In addition, I'll be touching on Windows' relevance, concerns over digital tracking, and why I believe Access still has plenty of life left.

Some of the topics we'll cover today include issues with variable and control naming in VBA, automating Excel file imports, using check boxes in continuous forms, best practices for storing your databases, generating and reading text files, and controlling user access to forms and controls based on permissions. I'll also explain why I've designed multiple title slides for the videos this week.

Let's get into some of the questions.

First, there was a case where a student was trying to use the Environment function to pull the Windows computer name and username, but ran into trouble because a variable and a control shared the same name. In Access, assigning the same name to a memory variable and a textbox control on your form can lead to headaches. These are two entirely separate things: the variable exists in memory, while the control is an object on your form. If you want to reference the textbox, you have to explicitly indicate that, for example, by using Me!ADUser. To avoid confusion, always give your variables and controls unique names. This is a classic beginner's mistake in VBA, and it will save you a lot of frustration in the future.

Moving on, another viewer wanted to automate the process of importing and cleaning multiple Excel files into Access. If you've already created a button that performs these operations, you're nearly finished - automation is simply a matter of running that process on a schedule. One approach is to keep Access running and use a timer to trigger the process at a certain hour. Alternatively, you can use Windows Task Scheduler to open your database at a scheduled time, execute the report or import, and then close Access when done. Each method has its pros and cons, but automating repetitive tasks like these is a great productivity boost.

A question about continuous forms dealt with checking off specific invoices for payment. If you ever notice that checking one box in a continuous form checks them all, it's because the check box is unbound. Access is showing one control repeatedly, not a unique control for every record. The solution is to bind the check box to a Yes/No field in your source table, ensuring each record maintains its own checked state. However, if your subform is based on an aggregate (GROUP BY) query, the form will become read-only, which prevents updating the check box. The answer is to base the subform on an editable query and calculate totals elsewhere, such as in the form footer or with a totals query. This keeps your forms editable and functional.

Another topic brought up was the use of Public Static Subs. Declaring a subroutine as Static allows its local variables to retain their values between calls. While this seems useful, it brings possible confusion and hidden state issues into your code. Usually, it's better to declare only those variables that genuinely need to persist as Static, or better yet, use TempVars for temporary storage, as they're easier to manage and more resilient during development.

When a viewer asked about their VBA-based auditing tool that checks changes to controls on a form and logs them, I noted that this is an excellent approach for tracking changes in your data. By comparing a control's current value against its OldValue and logging differences, you can effectively maintain a record of who changed what and when. The main areas to watch for involve error handling and how record sources are structured, but the overall technique is solid.

Storage location of your database files is another area that warrants careful consideration. Never put Access databases in protected system folders like Program Files or the Windows directory - these locations often prevent necessary write operations. I recommend creating a specific Databases folder, preferably on its own partition or server. Cloud storage services like OneDrive or Dropbox are great for backup, but should not be used as the live location for your backend database file, since syncing during use can lead to corruption. For split databases, keep each user's front end local, with the backend on a stable network share.

I also addressed questions about the use of AI-generated office scenes in video thumbnails. Successful YouTube videos often have thumbnails featuring people because faces attract more clicks. Since most of my audience is male, I chose an AI-generated female office worker as a mascot, to create consistency and draw attention without being distracting. I also run split-tests and viewer polls to determine what visuals work best, and I rely heavily on feedback from my viewers and members to decide which styles or images to use in future thumbnails.

Other technical queries included a discussion on working with text files - both writing and reading - from Access. For example, if you need to import EDI invoice files, you'll need to parse fixed-width strings. Tools like FreeFile provide file handles for reading and writing files in VBA, while recordsets are used to fetch data from tables or queries. Both are essential, but serve different roles. Text files are also useful for storing configuration or log data, especially when you need portability or integrations with external programs.

A question about attending Access Day conferences in 2026 prompted me to highlight the value of networking with other Access developers, sharing knowledge, and keeping up with the latest features and updates from the Access development team at Microsoft.

A practical printing question dealt with squeezing a 28-column report onto a single page. Unlike Excel, Access reports do not automatically scale output to fit the page. To achieve this, you'll need to manually adjust your layout, use landscape orientation, reduce margins and control sizes, and possibly use larger paper. For very wide reports, consider exporting your data to Excel, which handles this type of output much more effectively.

One tip from a viewer suggested using the Split Window feature in the VBA Editor to view different parts of a module at once. This is indeed a helpful tool for those working with large code modules, and pairing this with features like tiling or cascading windows can boost workflow efficiency.

Controlling form and report visibility based on user permissions is a common concern. With basic user-level security, you can create logon forms and restrict forms, reports, or even individual buttons based on who is logged in. Remember though, these tools only control what happens within your forms. For real security, consider splitting your data out to SQL Server, which offers stronger protection, and distributing your Access front end as an ACCDE file to lock down your design.

The future of Windows and Access often comes up, especially when compared with Linux and concerns about software tracking. The reality is that Windows remains the primary operating system for both businesses and individual users, and is not disappearing any time soon. Tracking by large software companies is common, but you have the ability to control privacy settings. As for Access, it continues to be critical for millions of businesses. Microsoft still updates Access, and it's likely to remain the dominant desktop database development environment for at least another decade. Learning Access remains a valuable skill, whether you're an experienced professional planning to stick with your business for years, or a young developer who wants to maintain, upgrade, or integrate with older systems.

In sum, Microsoft Access is very much relevant, especially for those wanting to build business applications quickly and effectively. It outpaces other tools in terms of productivity for many use cases, and it will continue to provide opportunities for work and consulting as long as businesses keep relying on established Access databases.

As always, I encourage your feedback and questions. Be sure to check out my website for a complete video tutorial with step-by-step instructions on everything discussed here. Live long and prosper, my friends.
Topic List Avoiding variable and control name conflicts in Access VBA
Automating Excel imports with Access and Windows Task Scheduler
Using check boxes in continuous forms and subforms
Binding check boxes to fields vs unbound controls
Making aggregate (GROUP BY) queries editable for subforms
Using Static variables and Public Static Subs in VBA
When and why to use TempVars for persistent values
Auditing routine: comparing OldValue and Value in form controls
Logging changes to an audit table for user actions
Best practices for Access database file storage locations
Dangers of cloud-synced folders for live backend files
Split database front end and back end storage strategies
Strategies for regular and tested database backups
Exporting and importing fixed-width text files in Access VBA
Differences between FreeFile and Recordset in file I/O
Managing user settings with config files and tables
Controlling form and button access by user permissions
User-level security setup in Access databases
Hiding navigation pane and restricting design access
Overview of integrating Access with SQL Server for security
Working with wide reports and limits of Access report scaling
Exporting wide reports to Excel for better formatting
Using Window Split in VBA Editor for editing large modules
Tiling windows in the VBA Editor for multi-module editing
Article If you are wondering whether Microsoft Access is still worth learning in 2026 or if it is becoming a relic of the past, the answer is a clear yes - Access remains a valuable tool for developers, consultants, and especially small businesses. Despite the impression some online headlines give, Microsoft Access has a strong future, and understanding its place in the technology ecosystem is important for anyone working with data or business applications.

Let's start with a common pitfall in VBA for Access: confusing local memory variables with form controls. Imagine you want to pull the Windows computer name and username; you declare a VBA variable, say ADUser, and also have a text box named ADUser. At first glance, it seems logical, but this naming can cause trouble. When you write Dim ADUser As String, you are declaring a variable in memory, which is entirely separate from any controls on your form, even if they have the same name. If you intend to reference the text box, you must use Me!ADUser. The "Me!" keyword refers to the current form, and the exclamation point tells Access you are referencing a control or field. Mixing up these names confuses Access, and can lead to bugs that are hard to spot. The best practice is to always name your variables and controls differently, say ADUserText for the text box and ADUser for the variable. This keeps your code clean and prevents Access from making incorrect guesses about your intentions.

If you have already built an Access database that, for example, cleans and imports multiple Excel files at the click of a button, you are not far from full automation. Automating such tasks can be done by using Access's built-in timer function, which checks the system clock and runs the import process at a specific time while Access is open. Alternatively, for scheduled tasks like daily imports, you can use the Windows Task Scheduler to automatically launch your Access database and run a designated function or macro, then close down Access when done. This allows unattended operations and can greatly improve workflow efficiency.

Next, let's talk about handling controls in continuous forms, such as adding a check box in a subform to select multiple records. In Access, continuous forms appear to have a separate control for each record, but behind the scenes, the same control is reused. If you use an unbound check box, every row's box will change together, because there is only one real value for that control. To have independent check boxes per row, you must bind the control to a Yes/No field in your data source. However, if your form is based on an aggregate (GROUP BY) query, it becomes read-only, making it impossible to edit the check boxes. The solution is to use a regular editable query for the subform's record source and move any totals or calculations to other parts of the form, like the footer or a separate query. This approach allows each record to maintain its own checked state and remain editable.

A member asked about "Public Static Sub" in VBA, and whether declaring a Sub as Static has special performance or memory-saving benefits. By default, the local variables inside a Sub or Function get reset each time it runs. Declaring a procedure as Static causes all of its local variables to remember their values from the last run, not just while the Sub is still in use, but across multiple calls. This can be useful, but it often leads to confusing bugs, since it introduces hidden state that can be hard to track or reset. Instead, it's better to declare just the variable you need as Static, leaving the rest as normal. This makes your intent clear. In many cases, using TempVars is even better: TempVars are temporary variables provided by Access that persist through various code events and are easy to manage and inspect, even surviving some crashes and errors. This results in more reliable code and easier troubleshooting during development. In summary, Static procedures exist in VBA, but they are rarely the best solution for modern code.

If you want to audit changes in your Access database, a practical method is to loop through each control on a form, compare its current value to its OldValue property, and log differences to an audit table. For instance, in VBA you might iterate through every text box, combo box, and check box control, check if the value changed, and record the user, the old value, the new value, and a timestamp. This method provides a solid way to track user edits - especially helpful when users deny making changes they actually made. Keep in mind that you should implement error handling in your routines, particularly for module errors or if the audit table is unavailable, so that the system doesn't crash mid-save.

Regarding database storage, never store your Access files in the Program Files or Windows directories. Those folders are protected by Windows and can create permission issues, preventing Access from creating the temporary and lock files it needs. Instead, create a dedicated folder, such as C:\Databases or Z:\Databases on a server or network share. Keep program files and data on different drives whenever possible, which safeguards your data in case you need to reinstall your operating system. As for cloud services like OneDrive, Google Drive, or Dropbox: use them for backup purposes only. Never store your live backend database file in a synced folder, as synchronization while the database is open can cause corruption. For split databases, always ensure each user's frontend file is stored on their own local computer, and only the backend sits on a shared network location.

Access does not offer Excel's "fit to page" feature for printing, so fitting a report with many columns (such as 28 columns) onto a single sheet requires manual adjustment. You can make each control smaller, shrink the font size, switch to landscape orientation, reduce margins, or even use larger paper sizes if your printer supports them. However, for very wide data, exporting to Excel is usually a better strategy, since Excel handles wide grids much more gracefully and allows you to scale the printout as needed.

If you work with large code modules in Access's VBA editor, using the Window > Split command or dragging the split handle allows you to view and edit two different sections of a module at the same time. You can also use tiling commands (tile horizontally or vertically) to organize multiple modules or forms side by side, which is especially handy on wide monitors. Use Ctrl+F4 to quickly close modules when you are finished, helping keep your workspace organized.

To control user access to forms, reports, and functions based on permissions, create a user-level security system in Access. A typical solution involves a login form where users enter their credentials, and then code checks permissions to determine what forms, buttons, and reports each user can see and use. For more advanced needs, you can develop a complete system with users and groups, hide the navigation pane and ribbon, and distribute your database as an ACCDE file to prevent design changes by unauthorized users. While these methods are effective for controlling what users can do within your interface, they do not truly secure the database files themselves. For that level of security, move the data itself to SQL Server, which provides user- and group-level security and restricts direct access to the underlying data.

One practical routine for handling text files is using FreeFile to get an available file number for reading or writing text files in VBA. For example, suppose you want to export records from Access to a plain .txt file: you use FreeFile to get a file number, open the file with Open filename For Output As #filenumber, then iterate through your recordset (for example, all customers) and print each row to the file. Conversely, for importing a fixed-width EDI invoice, you use FreeFile to open and read a line, then use string manipulation functions (like Mid, Left, and Right) to break apart the fields before writing them into your tables.

Configuration files are another common use for Access-to-text solutions. You might want to store user preferences, application settings, or log files - sometimes it is easier to write a small text config file than to build a complex table structure, especially if multiple programs need to share those settings. A VBA example for writing a config line would look like:

Dim fileNum As Integer
fileNum = FreeFile
Open "C:\MyApp\config.txt" For Append As #fileNum
Print #fileNum, "PrinterName=HP1234"
Close #fileNum

For splitting the VBA Editor to work on two sections of code simultaneously, simply use Window > Split from the menu, or drag the small splitter box to your desired position in the code window. This creates two scrollable panes on the same module so you can easily reference different parts of your code. Pair this with tiling separate modules, and even on modest screens you can compare and copy code efficiently without getting lost.

On the broader question of whether Windows is losing ground to Linux and if Microsoft is tracking users excessively, the reality is more measured. While Linux is growing, especially among developers and enthusiasts, the Windows ecosystem remains the unquestioned standard in both corporate and consumer spaces. Microsoft does collect usage data and uses it for improving services and targeting advertising, much as Google, Apple, and Facebook do. For most users and use cases, these practices do not constitute a serious privacy concern, and privacy options are available for those who wish to minimize data sharing. The big story is that Microsoft is still updating Windows and Access, and business reliance on these technologies is strong. For those running businesses or hoping to consult for small businesses, Access and Windows continue to be essential platforms. If you already know Access, there is no need to rush to something else; if you are starting out, Access skills are still in high demand for maintaining and modernizing legacy applications or integrating Access with new systems.

As for Microsoft Access, it is true that Microsoft does not invest in it as heavily as some of its cloud-based tools, but Access remains the fastest way to create solid business applications for the Windows desktop. Businesses large and small run countless critical systems on Access, and those systems are not going away anytime soon. If you are in your 50s and expect to run your business another 10 or 15 years, Access will meet your needs just fine throughout that span, especially when paired with SQL Server on the backend for larger-scale or more secure applications. Even young developers today should consider learning Access, since there will be a steady market for maintaining and upgrading Access solutions for years to come.

In summary, Microsoft Access is worth learning and using in 2026 and beyond. For rapid business development on the Windows platform, it is unmatched, especially for solo developers and small teams. The ecosystem is strong, the user community is active, and Access is still the single most productive environment for Windows-based business database applications.

Other general tips to remember: keep variable and control names distinct in your code, store database files in trusted and appropriate folders, use text files where needed, leverage available security features, and always, always maintain and test backups. If you want to learn more about Access, practice, ask questions, and continue improving your skills - there is still plenty of work to do and many businesses to help.
 
 
 

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: 5/17/2026 9:07:41 PM. PLT: 1s
Keywords: TechHelp QQ Quick Queries, Is Microsoft Access still worth learning in 2026, AccessLearningZone.com, VBA memory variables vs form controls, Excel import automation, continuous forms check boxes, database storage location best practices, writing text files  PermaLink  Is Microsoft Access Still Worth Learning in 2026? - QQ 92