Skip to main content

Create auto backup for word documents using macro.

This is a macro for Microsoft Word to save documents with incremented revision numbers in order to prevent loss of work and to easily revert changes.

When saving this will save the document with the original filename.
Everytime it is saved using this macro it will append the revision number to the filename.
For Example: Dissertation – Revision 011 – Jan 6 2011.doc

Installation instructions for Microsoft Word 2010:
Make sure the Developer Tab is enabled:
Office 2010:
Click File -> Options
Click Customize Ribbon on the left.
In the right column, check the ‘Developer’ check box.
Click OK.
Office 2007:
Click the Office button in the top left.
Click “Word Options” located in the bottom right of the menu.
On the left, click Popular.
In the right column, click “Show Developer tab in the Ribbon”.
Click OK.
Click the Developer tab in Word.
Click Macros.
In the Macro name field type “SaveMacro” and click the Create button.
Delete everything from Sub SaveMacro() to End Sub.
Copy and paste all the text in the box below:


Sub SaveMacro()
Dim WSHShell, RegKey, rkeyWord, Result
Set WSHShell = CreateObject("WScript.Shell")
Dim intCount As Integer
Dim strDate As String
Dim strPath As String
Dim strFile As String
Dim strFileType As WdDocumentType
Dim strRevisionName As String
Dim intPos As Integer
Dim sExt As String
strDate = Format((Date), "dd mm yyyy")
sExt = ".doc"
strFileType = wdFormatDocument
With ActiveDocument
On Error GoTo CancelledByUser
If Len(.Path) = 0 Then
.Save
End If
strPath = .Path
strFile = .Name
End With
intPos = InStr(strFile, " - ")
If intPos = 0 Then
intPos = InStrRev(strFile, ".doc")
End If
strFile = Left(strFile, intPos - 1)
Start:
RegKey = "HKEY_CURRENT_USER\Software\Microsoft\Office\Word\Settings\"
On Error Resume Next
rkeyWord = WSHShell.RegRead(RegKey & strFile)
If rkeyWord = "" Then
WSHShell.regwrite RegKey & strFile, 0
GoTo Start:
End If
intCount = Val(rkeyWord) + 1
WSHShell.regwrite RegKey & strFile, intCount
strRevisionName = strPath & "\" & strFile & " - Revision " & Format(intCount, "00#") & " - " & strDate & sExt
ActiveDocument.SaveAs strRevisionName
Exit Sub
CancelledByUser:
MsgBox "Cancelled By User", , "Save Cancelled."
End Sub


Sub FileSave()
SaveMacro
End Sub


Now click on the down arrow from the Quick Access Toolbar, then click More Commands…
Now under where it says “Choose commands from:” change the drop down box to Macros.
Click on Normal.NewMacros.SaveMacro then click Add.
It will now appear in the right column.
If you want to change the icon, click on the Macro, then click Modify below.
Once done, click OK.

Comments

Popular posts from this blog

How to display the location of the current file on the Quick Access Toolbar in Office 2013

 Problem  How to display the location of the current file on the Quick Access Toolbar in Office 2013 Solution You can display the location of the currently open Office document on the Quick Access Toolbar. To do this follow these steps: 1. Open any document or a blank document in Word and click the FILE tab. 2. Click Options at the bottom of the options list on the left. 3. On the Word Options dialog box, click Quick Access Toolbar in the options list on the left. 4. To narrow the choices in the list of commands and make it quicker to find the desired option, select Commands Not in the Ribbon from the Choose commands from drop-down list. 5. Scroll down in the list of commands until you find the Document Location command. Select it and click Add to add it to the Quick Access Toolbar. You can move the Document Location command to a different location on the Quick Access Toolbar using the up and down arrows to the right of the list of toolbar commands. 6. Click OK to accept the c...

How to send email force fully using a default account in outlook.

Problem: How to send email force fully using a default account in outlook. Solution: People who use multiple accounts and frequently (accidentally) send using the wrong account, especially if they are sending sensitive documents, as it will almost eliminate accidentally sending email from the wrong account. In Outlook 2010, the registry key is: HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\14.0\outlook\options Value Name: ForceAccountSelection Value type: REG_DWORD: 1 for force, 0 to disable. In Outlook 2013, the registry key is: HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\15.0\outlook\options Value Name: ForceAccountSelection Value type: REG_DWORD: 1 for force, 0 to disable. Notes: You need to create the path if it does not exist. The value type is the same for both 32-bit and 64-bit Outlook.

How to change the color of the wavy underline that indicates spelling errors.?

Issue: How to change the color of the wavy underline that indicates spelling errors.? Solution: To change the color of the wavy underline that indicates spelling errors, follow these steps: 1.      Click Start , click Run , type regedit , and then click OK . 2.      Locate and then click the following registry subkey: HKEY_CURRENT_USER\Software\Microsoft\Shared Tools\Proofing Tools 3.      If the SpellingWavyUnderlineColor entry exists, go to step 6. If the SpellingWavyUnderlineColor entry does not exist, go to step 4. 4.      On the Edit menu, point to New , and then click DWORD Value . 5.      In the right pane, type SpellingWavyUnderlineColor . This is the name of the new entry. 6.      In the right pane, double-click SpellingWavyUnderlineColor . 7.      In the Edit DWORD Value dialog box, click Hexadecimal . 8.      In th...