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 > AutoSave While Editing < Last Contact | DAvg >
AutoSave While Editing
By Richard Rost   Richard Rost on LinkedIn Email Richard Rost   14 months ago

Access AutoSave: Save Notes Safely While Still Typing


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

In this Microsoft Access tutorial, I will show you how to enable AutoSave while actively typing, similar to functionality in Word, without interrupting your workflow. We'll explore setting up a timer event to save automatically and manage cursor position to ensure seamless text editing. Wait, did you say AutoSave? Access doesn't have an AutoSave. Well, it does now. :)

Holly from Pittsburgh, Pennsylvania (a Platinum Member) asks: I use your Autosave feature and it works great, but I noticed that if I'm actively typing for 10 or 15 minutes, the Autosave never kicks in because the timer only runs when I'm idle. Sometimes I forget to manually hit Refresh, and I'd like it to save automatically while I'm typing, just like in a Word document. Is there a way to do that without interrupting my work?

Members

There is no extended cut, but here is the file download:

Silver Members and up get access to view Extended Cut videos, when available. Gold Members can download the files from class plus get access to the Code Vault. If you're not a member, Join Today!

Prerequisites

Links

Recommended Courses

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.

KeywordsAutoSave While Editing in Microsoft Access

TechHelp Access, AutoSave Access while typing, AutoSave VBA implementation, Access VBA cursor position, AutoSave during editing, Access timer event, AutoSave long text fields, Active control VBA, Cursor position VBA Access, Dim variable VBA tutorial

 

 

 

Comments for AutoSave While Editing
 
Age Subject From
14 monthsLink Not WorkingJohn Schreiber
14 monthsNotes to Access TeamSami Shamma

 

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 AutoSave While Editing
Get notifications when this page is updated
 
Intro In this video, we'll talk about how to create an AutoSave feature in Microsoft Access that saves your work while you're actively typing, without interrupting your editing. We'll discuss programming a timer with VBA, adjusting the timer interval, detecting which control is active, using the selstart property to track and restore your cursor position, and handling long text field edits safely so your data is always protected. This tutorial is perfect for anyone who frequently updates long text fields and wants peace of mind that their work is saved automatically.
Transcript Welcome to another TechHelp video brought to you by AccessLearningZone.com. I'm your instructor Richard Rost. Today we're going to talk about AutoSave and how to get it to work while you're editing.

Today's question comes from Holly in Pittsburgh, Pennsylvania, one of my platinum members. Holly says, "I use your AutoSave feature and it works great, but I noticed that if I'm actively typing for 10 or 15 minutes, the AutoSave feature never kicks in because the timer only runs when I'm idle. Because I forget to manually hit refresh, I'd like it to save automatically while I'm typing, just like in a Word document. Is there a way to do that without interrupting my work?"

Yes, there is, and we'll get to that in a minute. For everybody else, if you're not sure what she's talking about regarding AutoSave, I did another video about two years ago where I show you how to have Access automatically save your work because Access, literally the red-headed stepchild of the Microsoft Office family, does not have an AutoSave feature.

If you're sitting there typing and you're in the middle of editing a record and don't save it, you don't leave the record, close the form, or at least hit F5, your record doesn't get saved. So, what I did was show you how to program a timer in this video at whatever interval you specify - five minutes, ten minutes, half hour - it'll automatically save your work.

In the members extended cut, I showed you how to stop the AutoSave from kicking in if the user is actively editing the record, and that's what Holly is talking about. If you're actively typing and it refreshes on you, it might mess up your work. That's why I usually suggest setting this to something like 60 minutes.

But Holly told me that she does a lot of very long document editing and she saves those documents as text in long text fields in her database. So she could be sitting there typing for 20 minutes, editing a long text field. If there's a problem, if the computer crashes, or the power goes out, you might lose your work. So is there a way to have the AutoSave still kick in every few minutes, but not lose your work and not get interrupted? Yes, you can. That's what I'm going to show you how I do in today's video.

First up, definitely go watch this video first. This is a developer level video, so as the one today, you'll need some VBA. You'll need to learn the stuff that I cover, at least in the beginner video of this. You don't have to be a member and watch the extended cut. Although it helps, if you do sign up, become a member, you help support me, and you'll learn a lot more stuff that way. But you can just go watch the free video.

You'll also need to know how to determine what the active control is, which I cover in this video. What field is the user currently on? We only want this to run if they're on that notes field, don't interrupt anywhere else. I'm going to go watch this video on cell start and cell length, which tells you how to find out where the cursor is inside of a text box. Go watch these three videos. They're on my website and my YouTube channel. Go watch them and then come on back.

Here I am in my TechHelp free template. This is a free database you can grab off my website if you want to. I'm just going to make a few modifications here real quick. I'm going to get rid of these buttons. We don't need them. Get rid of this stuff here and just make this a little bit bigger so we can work with this. Okay, now the code that we built in the other video is relatively straightforward. We come in here. We go to events. We slide down here to the timer interval. We set this to an interval, however often we want the timer to kick in.

Remember, these are milliseconds. So if you want it to kick in every second, which I don't recommend, you put a thousand in here. Every 10 seconds, you put it in 10,000. I think for the purposes of class, I'm going to do 3000. That's three seconds. That way you can see it's working in the video. Obviously, you probably want to set that to something more reasonable, like 15 minutes or something like that. Once a minute, even, would be 60,000. 60 times a thousand is 60,000.

Then in the on-timer event, we're going to come in here. We're going to say, just like we did in the other video, it's really simple: if me.dirty, which means this record is being edited, it has not been saved yet, then some stuff. I set the caption, me.caption equals auto saved, and then the current time, so the user knows it's been saved. Then me.dirty equals false that commits the changes to the table. Okay. And then I put a beep in there just for now, so you know.

We save this. Save it. We're going to close this. I'm going to close it, open it up. Nothing happens. I'll wait three seconds. Three, two, one. Okay, because the record is not dirty yet. But as soon as I make this dirty and start typing, now it's dirty. I'm typing. I'm typing. I'm typing. Oh, see, it kicked in. It backed up. But it backed me up to the top of the thing. It interrupted where I was. Let me undo that. I can't undo it either because we committed the change. There we go. What I needed to do was remember where the cursor is if I'm in this field; the rest of the fields, you don't have to, I mean, we can modify the slightly to work on any text box. But first, let's just focus on the notes field. I can have it say, okay, remember where you are at what position, and then save that and after the refresh, put the cursor back in that spot.

Let's go back into our code. I got a little button up here that I put on the quick launch toolbar, just go right back to the visual basic. Got a whole separate video on that one. So now we're going to put together this stuff, the different Legos that I told you to go watch the videos. We're going to need to know the active control. We're going to need to know the position of the cursor with cell start, and we're going to need to store that information in a variable. Let's dim the variable first. So dim, let's call it current position, curpos as long. If you don't know about dimming variables, go watch this video.

Now, what I'm going to say is in here, if this kicks in to run this backup, I'm going to say if — you noticed what just happened. I wasn't expecting that, but I like the fact that it ran because I get this question a lot from people. Notice what just happened. I started typing in this happened. If you've got a form open in the background with a timer event, that's going to run if this form is in form view. And you're going to get locked out of it. So stop it here. I'm over here right-click design and leave this guy in design mode because if this is sitting in form view mode, it's going to run its timer event. We don't want that if we're in the visual basic editor. Note to visual basic team, decouple that somehow, make it so that it doesn't affect the visual basic editor. That's kind of weird.

As I was saying before I was so rudely interrupted, if we're on that notes field, so if screen.activecontrol.name equals notes, I'm sitting on the notes field. Then, curpos equals screen.activecontrol.selstart. Whatever its selstart cursor position is, that's what I'm putting in my curpos, my temporary variable. Do your thing, save it, mark it not dirty, whatever you have to do. And now we've got to put it back down here, which is basically the reverse of this. We're going to copy this again, paste it here. But this way, we're going to flip it. We're going to say screen.activecontrol.selstart equals curpos. So put the cursor back after you save it.

All right. Save it. Back over here. Close it. Open it. And now I'll come in here. I'll start typing. Typing. Typing. Oh, look at that. I'm typing. Typing. Oh, look at it. It's saving in the background. Look at it. Uh-huh. It's working. So it's remembering the cursor position, doing the save, and then putting the cursor right back where it was. That's pretty cool, huh?

Again, you could do the same thing on the other fields while you're editing too, but these are usually really short fields and you're not usually sitting in them for 10, 15 minutes. You don't really need that. But you could do it if you wanted to. What you could do is instead of checking for screen.activecontrol.name, I'll just put this in a comment here so the gold members have it. You could say if screen.activecontrol.controltype equals actextbox, then do whatever. Because actextbox says that the control type that you're in is a text box because this selstart stuff won't work in other field types like a checkbox or a button or whatever else you might be sitting on.

You only want it to run. But I like it for this. I like it for just my long text fields. I wouldn't want it in every single field. Where did I find that actextbox thing? Well, you can Google it or you can go into code vault if you're a gold member. You can find all the control types right in here. There's actextbox right there. There's all the variables. See, lots of stuff in the code vault. All you have to do is come over here and search for control type and you'll find it too.

Do you like this stuff? Do you like learning with me? Do you like programming and VBA and want to make your access databases better? Take it to the next level. Check out my developer lessons. I cover stuff in the order you should learn it. So I'm not like jumping around like okay, go watch this video then come back. No, that's just a TechHelp videos. I do that because I don't know who knows what. But in my courses, you start from the beginning, you work your way through it.

But that is going to be your TechHelp video for today. I hope you learned something. Live long and prosper, my friends. I'll see you next time.

If you enjoyed this video, please give me a thumbs up and post any comments you may have below. I do try to read and answer all of them as soon as I can. Make sure you subscribe to my channel, which is completely free. Click the bell icon and select all to receive notifications when new videos are posted. Want to learn more? Click the show more link below the video to find additional resources and links. YouTube does a pretty good job of hiding it. It's right down there. See this part of the description here. The name, the videos up here. There's a little show more down there, right down the bottom. It's kind of hard to find. But once you click on that, you'll see a list of other videos, additional information related to the current topic, free lessons, and lots more.

YouTube no longer sends out email notifications when new videos are posted like they used to do. But if you'd like to get an email every time I post a new video, click on the link to join my mailing list. You can pick how frequently to get emails from me either as they happen, daily, weekly, or monthly.

If you'd like to become a paid member of my channel and receive all kinds of awesome perks, click on the join button. You'll see a list of all the different membership levels that are available, each with its own special perks, including my extended cut videos, access to my code vault, lots of VBA source code in there, template downloads, and lots more. I'll talk more about these perks at the end of the video.

Even if you don't want to commit to becoming a paid member and you'd like to help support my work, please feel free to click on the tip jar link. Your patronage is greatly appreciated and will help keep these free videos coming. I have some puppies to feed. But don't worry, no matter what, these free TechHelp videos are going to keep coming. As long as you keep watching them, I'll keep making more and they'll always be free.

Now, if you really want to learn access and you haven't tried my free Access Level 1 course, check it out now. It covers all the basics of Microsoft Access, including building forms, queries, reports, and more. It's over four hours long. You can find it on my website or on my YouTube channel. I'll put a link down below you can click on. And did I mention it's completely free? The whole thing is free. Four hours. Go watch it.

Okay, a lot of you have told me that you don't have time to sit through a four-hour course. So I do now have a quicker Microsoft Access for Beginners video that covers all the basics faster in about 30 minutes. And no, I didn't just put the video on fast forward. But I'll put a link to this down below as well.

Now, if you like Level 1, Level 2 is just a dollar. That's it. One dollar. And that's another whole like 90-minute course. Level 2 is also free for paid members of any level, including supporters. So if you're a member, go watch Level 2. It's free.

Want to get your question answered in a video just like this one? Visit my TechHelp page and send me your question there. Members get priority, of course. While I do try to read and respond to all of the comments posted in the comments section, I only have time to go through them briefly a couple of times a month and sometimes I get thousands of them. So send me your question here on the TechHelp page and you'll have a better chance of getting an answer.

While you're on my website, be sure to stop by my Access forum...We've got lots of lively conversations about Microsoft Access and other topics. I have a fantastic group of moderators who help me answer questions. Shout out to Alex, Kevin, Scott, Adam, John, Dan, Juan, and everybody else who helps on the site. I appreciate everything you do. I couldn't do it without you.

Be sure to follow my blog, find me on Twitter, and of course on YouTube. Yeah, I'm on Facebook too, but I don't like Facebook. Don't get me started.

Now, let's talk more about those member perks if you decide to join as a paid member. There are different levels: Silver, Gold, and Platinum. Silver members get access to all of my extended cut TechHelp videos, one free beginner class every month, and some other perks. Gold members get all the previous perks plus access to download the sample databases that I build in my TechHelp videos plus access to my code vault where I keep tons of different functions that I use, the code that I build in most of the videos. You'll also get higher priority if you submit any TechHelp questions. Now, answers are never guaranteed, but you do go higher in the list for me to read them. And if I like your question, you have a good chance of it being answered. You'll also get one free expert-level class each month after you've finished the beginner series.

Platinum members get all the previous perks plus even higher priority for TechHelp questions. You get access to all of my full beginner-level courses for every subject. I cover lots of different subjects like Word, Excel, VBA, ASP, lots of different stuff, not just Access. These are the full-length courses found on my website. You get all the beginner ones. In addition, once you finish the expert classes, you get one free developer class per month, so lots of training.

So that's it. Once again, my name is Richard Rost. Thank you for watching this video brought to you by AccessLearningZone.com. I hope you enjoyed it. I hope you learned something today. Live long and prosper, my friends. I'll see you again soon.

TOPICS:
AutoSave feature explanation
Programming a timer in Access
Timer interval settings in Access
On-timer event for saving records
Detecting active control in Access
Using selstart for cursor position
Saving cursor position in Access
Restoring cursor position after save
Handling form design mode in Access
Using controltype to identify textboxes

COMMERCIAL:
In today's video, we're going to discuss an AutoSave feature in Microsoft Access, addressing Holly's query about saving work while actively typing, just like in Word. You'll learn how to ensure your data is saved without interrupting your flow, through a VBA script that saves your place while typing, and refreshes without interference. We'll explore using VBA code to automatically save records every few minutes, adapting the AutoSave timer to your work style. Also, in today's Extended Cut, we will further optimize this feature to work intelligently across different text fields in your database. You'll find the complete video on my YouTube channel and on my website at the link shown. Live long and prosper my friends.
Quiz Q1. What is the main topic of the video tutorial by Richard Rost?
A. How to create complex queries in Microsoft Access
B. How to enable AutoSave while editing in Microsoft Access
C. How to use Excel macros within Access
D. How to integrate Access with other Microsoft Office applications

Q2. According to the video, what is generally required to implement the AutoSave feature effectively in Access?
A. Basic knowledge of SQL
B. Understanding of Access Macros
C. Familiarity with VBA (Visual Basic for Applications)
D. Experience with PowerPoint automation

Q3. What issue does Holly from Pittsburgh experience with the AutoSave feature?
A. AutoSave is saving too frequently while she types
B. AutoSave only triggers when she is idle, not while typing
C. AutoSave fails to work for long text fields
D. AutoSave interrupts her when she switches between records

Q4. Why does Richard suggest setting the AutoSave timer to a longer interval like 60 minutes?
A. To avoid frequent interruptions during short typing sessions
B. Because AutoSave doesn't work for shorter intervals
C. To minimize CPU usage by the Access application
D. To ensure that data is regularly saved in case of application crashes

Q5. How does Richard propose to solve the problem of AutoSave interrupting while typing?
A. By disabling AutoSave for long text fields
B. By remembering the cursors position within the text field
C. By asking the user to manually trigger AutoSave
D. By disabling AutoSave during working hours

Q6. What is the purpose of the "curpos" variable in the provided VBA solution?
A. To determine if a document has been saved
B. To store the position of the cursor in a text box
C. To count the number of characters typed
D. To keep track of the number of active controls

Q7. What does Richard suggest you can do instead of checking for the specific field name when implementing AutoSave?
A. Perform AutoSave on all control types
B. Highlight the text box being edited with a color
C. Check if the control type is a text box in general
D. Disable AutoSave for small text fields

Q8. What is a benefit mentioned in the video for becoming a paid member of Richard Rost's channel?
A. Access to one-to-one tutoring sessions
B. Ability to download all Access tutorials
C. Higher priority for TechHelp questions
D. Free annual subscription to Microsoft Office

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

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 TechHelp tutorial from AccessLearningZone.com, I'm your instructor, Richard Rost. We're discussing AutoSave and how to configure it to function seamlessly while you're busy editing.

One of our platinum members, Holly from Pittsburgh, Pennsylvania, asked a question. Holly noticed that although the AutoSave feature works well, it doesn't activate while she's typing continuously for 10 or 15 minutes. This happens because the AutoSave timer only starts when the user is idle. Holly wants AutoSave to function automatically during her typing sessions, much like Microsoft Word. She's looking for a way to achieve this without interrupting her workflow.

Indeed, there's a solution, and we'll cover that shortly. For those unfamiliar with what Holly's discussing, I previously demonstrated how to set up AutoSave in Access because, unlike other Microsoft Office applications, Access doesn't come with this feature. If you're actively working on a record and fail to save it—or don't close the form or hit F5—the record remains unsaved.

In a previous video, I guided you through programming a timer in Access to save your work at specified intervals, whether that be every five, ten, or thirty minutes. In the extended cut for members, I showed how to prevent AutoSave from interrupting if a user is editing a record. That's the concern Holly remarked upon—active typing could disrupt the save process.

Holly engages in extensive document editing, saving her lengthy documents as text in her database's long text fields. Typing into one field for 20 minutes raises the risk of losing work if her computer crashes or loses power. She wants AutoSave to activate periodically without disruption. Today, we'll explore how to accomplish that.

I recommend watching this video, especially if you're dealing with a developer-level concept that requires VBA experience. Familiarize yourself with determining the active control and learn what field the user is on. We want our changes to run only when the user is on the notes field without interrupting elsewhere. For more detailed instructions, I have several video resources on my website and YouTube channel. Be sure to check those out first.

Now, let's move into your database adjustments. We need to address the timer interval, using milliseconds. For instance, if you'd like the AutoSave feature to activate every three seconds for demonstration, that's 3000 milliseconds. For your actual database, you might prefer a longer duration usually between 15-30 minutes.

Next, for the on-timer event, there's a simple concept—if the record is dirty (being edited and not saved), perform some actions such as saving and notifying the user with a timestamp in the caption. After saving, we ensure changes commit to the table.

For this method to work without disrupting your workflow, it's crucial to remember where the cursor is within the text field. If AutoSave kicks in while typing, the cursor might move unexpectedly. To maintain cursor position, utilize variables to store cursor location then, after saving, reapply its original position in the text box.

While you can implement this for all fields, it's practical primarily for long text fields where users spend extended periods. Consider using logical checks for control types like "actextbox" to focus on the necessary fields without impacting others like buttons or checkboxes.

If you enjoy learning how to better utilize Microsoft Access and want to explore more developer lessons, consider my structured courses. Unlike the TechHelp videos, which cater to varying expertise levels, my courses proceed methodically to enhance your Access skills progressively.

For extensive steps and to watch this process in action, a complete video tutorial is available on my website. Remember, these concepts discussed today can tremendously augment the functionality of your databases. Live long and prosper, my friends.
Topic List AutoSave feature explanation
Programming a timer in Access
Timer interval settings in Access
On-timer event for saving records
Detecting active control in Access
Using selstart for cursor position
Saving cursor position in Access
Restoring cursor position after save
Handling form design mode in Access
Using controltype to identify textboxes
 
 
 

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 1:44:56 PM. PLT: 1s
Keywords: TechHelp Access, AutoSave Access while typing, AutoSave VBA implementation, Access VBA cursor position, AutoSave during editing, Access timer event, AutoSave long text fields, Active control VBA, Cursor position VBA Access, Dim variable VBA tutorial  PermaLink  AutoSave While Editing in Microsoft Access