If you are using a macro that inserts text in a document, you might want to determine if the overtype mode is active. This is the typing mode that results in every keypress replacing an existing character in the file. If you don't check for this, your macro could have undesired results.
The status of overtype is controlled, oddly enough, by the OverType property of the Options object. If the property is True, then overtype mode is active; if it is False, then it is not turned on. The following line of VBA macro code checks the status of the overtype mode and turns it off if it is on.
If Options.OverType Then Options.OverType = False
Note:
WordTips is your source for cost-effective Microsoft Word training. (Microsoft Word is the most popular word processing software in the world.) This tip (13266) applies to Microsoft Word 2007, 2010, 2013, 2016, 2019, and Word in Office 365. You can find a version of this tip for the older menu interface of Word here: Determining if Overtype Mode is Active.
Learning Made Easy! Quickly teach yourself how to format, publish, and share your content using Word 2013. With Step by Step, you set the pace, building and practicing the skills you need, just when you need them! Check out Microsoft Word 2013 Step by Step today!
Your computer knows the current date and time, and Word provides ways you can get that date and time into your document. ...
Discover MoreMacros are part of the document and template that are loaded into memory when you open a file. If you have "junk" macros ...
Discover MoreIf your macro needs to communicate with a user, one simple way to do it is to use a message box. Here's how to use this ...
Discover MoreFREE SERVICE: Get tips like this every week in WordTips, a free productivity newsletter. Enter your address and click "Subscribe."
2014-10-06 09:56:15
Glenn Case
While the tip will achieve the purpose stated, it will also likely result in some user frustration if the macro resets an option the user has selected. A good practice is to save the state of the option, and reset it at the end of the macro:
Sub XYZ()
Dim OTMode as Boolean
OTMode = Options.OverType
If OTMode Then Options.OverType = False
*** Your code here
Options.Overtype = OTMode
End Sub
Got a version of Word that uses the ribbon interface (Word 2007 or later)? This site is for you! If you use an earlier version of Word, visit our WordTips site focusing on the menu interface.
FREE SERVICE: Get tips like this every week in WordTips, a free productivity newsletter. Enter your address and click "Subscribe."
Copyright © 2021 Sharon Parq Associates, Inc.
Comments