Word: List keyboard shortcuts, autotext, and autocorrect entries

May 3, 2017

There are many things you can do to help automate the writing and editing process. Power users of Word use keyboard shortcuts extensively — either the in-built ones that come with Word (e.g. Ctrl+s to save, Ctrl+c to copy etc.), or ones they’ve created themselves. Power users also use AutoText and AutoCorrect to speed up inserting commonly used text, tables, etc. (See the links below for some of the blog posts I’ve written on all these.)

But how do you know what you’ve got available to use? Some of the more obscure in-built keyboard commands are difficult to find listed anywhere, and how do you remember which ones you’ve created for your own use? How can you get a list of these shortcuts, and a list of your AutoText and AutoCorrect entries? Of course, once you have a list you can then save it or print it out to refer to at any time.

I used Microsoft Word 2010 for Windows when writing this blog post — the same (or very similar) information should apply to later versions of Word for Windows. Mac users — you may be able to do this too, but as I don’t own a Mac, I can’t test on a Mac or write about Mac stuff.

List all in-built Microsoft Word keyboard commands

  1. Open a blank Word document.
  2. Go to the View tab and click the large Macros icon.
  3. Click the drop-down arrow for the Macros in list, then select Word commands.
  4. Select ListCommands in the top box.
  5. Click Run.

List all custom keyboard commands

  1. Open a Word document that is based on the template where you know the custom keyboard commands are stored (if stored in Normal, just open a blank Word document).
  2. Go to the File tab and select Print.
  3. Under Settings, change from the default Print All Pages to Key Assignments.
  4. Choose your printer (e.g. PDF if you want a document to save), then click Print.

List all AutoText entries

  1. Open a blank Word document.
  2. Go to the File tab and select Print.
  3. Under Settings, change from the default Print All Pages to AutoText Entries.
  4. Choose your printer (e.g. PDF if you want a document to save), then click Print.

List all AutoCorrect entries

Use the macro described here: http://wordribbon.tips.net/T009084_Printing_a_List_of_AutoCorrect_Entries

See also:

[Links last checked May 2017]


Word: Macro to add a value at the beginning of each row of a table

May 2, 2017

I had a strange request — someone had a really long table in Microsoft Word (some 50+ pages long…) and wanted to add an asterisk (star) in front of the first character in each row, no matter how many rows and columns there were in the table or what the original first character in each row was (some first characters were numerals, but most were upper or lower case letters). Doing this manually was going to take hours, and he had several tables across various documents that he wanted to do this to.

My first thought was a find and replace with wildcards routine, but I quickly figured out that I didn’t have enough knowledge to do that, even if it was possible. My next thought was to add a new first column, populate it with asterisks, then merge the first and second columns of each row — the problem was that merging required selecting each pair of 1st and 2nd column cells for EACH row, then merging, then removing the added paragraph mark created by the merge process. That was going to take as long or even longer than adding the asterisks manually!

So I contacted my friend Dave Gash (www.davegash.com), a US-based programmer/tech writer, to see if he could help. His forte isn’t VBA, but he does know programming logic (and he knows what to search for), and by the next morning he had a solution for me. Actually he had a solution that was TOO good — his first solution (Macro 2 below) added the asterisk to the beginning of all rows in ALL tables in the document. But that’s not what my client wanted — he wanted to add asterisks to all rows in a specific table, not every table. A bit of tweaking and Dave came back a few minutes later with the solution that suited my client (Macro 1 below). When I ran it in test mode, the changes were almost instant, but they took about 5 mins on the 50+ page table! That was still many hours less than it would’ve taken manually. I owe Dave a beer or three!

Macro 1: Add an asterisk to the beginning of all rows in a specific table

Sub AddAsteriskToTableRow()
   ' From Dave Gash www.davegash.com April 2017 '
   ' Collapse the range to start so as to not have to deal with '
   ' multi-segment ranges. Then check if cursor is within a table. '

   Selection.Collapse Direction:=wdCollapseStart
   If Not Selection.Information(wdWithInTable) Then
      MsgBox "You can only run this when your cursor is within a table."
      Exit Sub
   End If

   ' Process every row in the current table. '
   Dim row As Integer
   Dim rng As Range

   For row = 1 To Selection.Tables(1).Rows.Count
      ' Get the range for the leftmost cell. '
      Set rng = Selection.Tables(1).Rows(row).Cells(1).Range

      ' For each, insert asterisk in leftmost cell.'
      ' Change value in quote marks if you want something other than an asterisk. '
      rng.InsertBefore ("*")
End Sub

Macro 2: Add an asterisk to the beginning of all rows in ALL tables in a document

Sub AddAsterisksToAllTables()
' From Dave Gash www.davegash.com April 2017
' Loop through all tables
For tbl = 1 To ActiveDocument.Tables.Count
    'Set up row and range vars
    Dim row As Integer
    Dim rng As Range
    'Loop through rows in current table
    For row = 1 To ActiveDocument.Tables(tbl).Rows.Count
        ' Get the range for the leftmost (column 1) cell
        Set rng = ActiveDocument.Tables(tbl).Rows(row).Cells(1).Range
        ' Insert the asterisk before the text in leftmost cell
        ' Change value in quote marks if you want something
        ' other than an asterisk.
        rng.InsertBefore ("*") 
    Next row 
Next tbl 
End Sub


  • The examples above use an asterisk as the added character, but you can make that character anything you want — one or more letters or numbers or standard punctuation symbols (or a combination), with or without a space. Just change the value in the double-quotation marks in the macro to what you want (e.g. you might have a list of product numbers that need to have ‘MQ’ added in front of them — change “*” to “MQ” [or “MQ-” or “MQ “]). You might want to change the name of the macro too, to reflect what you’re adding (e.g. AddMQToTableRow).
  • Don’t run this twice in the same table, otherwise you’ll end up with two asterisks!
  • Dave asked me to add this acknowledgement: ‘My source was from a StackOverflow (the coder’s friend, believe me!) member (apparently also from Western Australia!). … I modified the code I found there for your purposes.’ Source: http://stackoverflow.com/questions/7226721/how-can-you-get-the-current-table-in-ms-word-vba

[Links last checked May 2017]


Word: Unlock a password-protected document

April 18, 2017

I spotted this 2009 article (http://people.csail.mit.edu/teller/misc/unlockworddoc.html) a few weeks ago, and have now had time to test it — it works!

Now, why would you want to unlock a password-protected Word document? Surely the author/company has locked it for a reason? Yes, in many cases, that’s correct and you shouldn’t try to circumvent the password protection — instead, ask the author/company for the password if you need to access elements of the document (e.g. protected form fields, formatting tools etc.).

However, if the author has left the company, or if they wrote the document many years ago and have forgotten the password (it happens!), then you may need to break the password protection to access the document’s contents and functions.

You can follow the steps in the link above, or, in case the content at that link gets removed at any stage, follow my modified and more detailed steps below, which are based on that article:

  1. Open the password-protected document in Word.
  2. Go to File > Save As, then select Word XML Document (*.xml) from the Save as type drop-down list.
    Select Word XML Document from the Save as Type drop-down list
  3. Click Save.
  4. Close Word.
  5. Right-click on the saved XML file (it should be in the same folder as your original document), then select Open with and choose a text editing program to open the file with (e.g. WordPad, NotePad, or other text editing program — do NOT choose Microsoft Word).
  6. Press Ctrl+F to open the Find dialog box.
  7. In the Find what field, type enforcement.
  8. You’ll find one instance, either w:enforcement=”1″ or w:enforcement=”on”.
    Find 'enforcement'
  9. Replace the “1” with a zero “0” (or replace “on” with “off”) to disable enforcement. This step unlocks the document.
  10. Save the XML document within your text editor, then close the text editing software.
  11. Right-click on the saved XML file, then select Open with and choose Microsoft Word.
  12. As soon as you’ve opened it, go to File > Save As, then select Word Document (*.docx) from the Save as type drop-down list. Change the file name if you want to preserve the original password-protected document an make this a new document, or use the same file name to replace the original document.
  13. Click Save. You should now be able to edit the document.

[Link last checked April 2017]


ACES Conference: 2017

April 13, 2017

I attended (and spoke at) the American Copy Editors Society (ACES) annual conference in St Petersburg, Florida in March. I loved the Tampa/St Pete area!

Just for my records, here are the sessions I attended, with a brief summary for each of them.

Thursday March 23

  • Quick fixes you may have forgotten about (Merrill Perlman): A nice refresher of things that you can overlook when editing. Merrill is a funny, engaging speaker.
  • Catch as catch can (John Russial): Math!! Especially the difference between percentage and percentage point increases/decreases. Valuable.
  • Professional Etiquette: Navigate networking without making enemies (Christina Frey, Sarah Grey, Barbie Halaby, Heather Saunders): Very professionally presented, with seamless segues between members of the panel. Lots of content and great ideas.
  • ‘Word by Word: The secret life of dictionaries’ (Kory Stamper): Kory’s book had just been published a few days before the conference and this was her first-ever reading from it. She read an excerpt from the first chapter. It was so good, I ordered a copy online immediately afterwards (it was a hardback and only 24 copies were available at the conference) — my ordered copy beat me home. I’m about halfway through it and thoroughly savouring every word. Highly recommended for word nerds!

Friday, March 24

  • The Online Misinformation Ecosystem (general session) (Craig Silverman): Craig works for Buzzfeed. This session was great on pointing out how news and social media can manipulate a story.
  • Computer-Assisted Copy Editing: Using Tansa’s Products for Clear, Concise and Consistent Content (Chris Grimm): Excellent overview of some online tools available for checking consistency. However, each requires a link back to an online server, and so wouldn’t be acceptable to my main client.
  • The Editor as Writer: Essential Tools and Strategies (With Music!) (Roy Peter Clark): Great session, covering many basic (but often forgotten) strategies.
  • Faking Extroversion as an Introvert (Samantha Enslen, Rachel Godward, Laura Lattimer): Good session, but unfortunately Sam only ended up with about 3 minutes to cover all she had to say, which was a shame as she’s an excellent speaker.
  • ‘French toast’ vs. ‘french fries’: The Wild West of Food Editing (Wendy Allen, Janet Keeler): I loved this session! I don’t do food editing, but I cook, eat, and dine out, and read cookbooks and menus. I’m sure that qualifies, right? Oh, I was the only one in the room who knew the difference between grazer (an animal that grazes on grass) and grazier (a person who looks after such animals) — obviously ‘grazier’, which is well known in Australia, is little known in the US.
  • Banquet – keynote speaker Anne Curzan: Introduced us to ‘grammando!’, and recommended we use it instead of ‘grammar nazi’

Saturday, March 25

  • The Art of the Possible: The Dictionary as Authority of a Changing Language (Kory Stamper, Peter Sokolovksi, Anne Curzan): Lexicographers and linguists — these are my people and they are ‘on fleek’! :-)
  • Save Time and Your Sanity: Increase your Efficiency with Microsoft Word (me!): The room held about 70 seats — all were full, and about another 30 people were on the floor or leaning on the walls, which is tough for 90 minutes! Thanks for coming — and for staying, if you were one of the floor people.
  • Government Contract Editing–Guidelines to Make It Work (Elizabeth LaPlante, Helen O’Guinn): Good advice on plain language when writing and responding to RFPs etc.
  • How to Diagram Sentences — and Why (Lisa McLendon): A whirlwind trip through sentence diagramming, with examples for us to try. This wasn’t taught in Australian schools when I was growing up, so was unfamiliar to me, but I like the structure of it.
  • Lightning Presentations and Closing General Session: More whirlwind presentations. Kudos to the presenters!!

Windows won’t eject my storage device

February 22, 2017

I’d been using an external hard drive (connected by USB) and wanted to safely eject it. But no matter what I did, I kept getting this message: “Windows can’t stop your ‘Generic volume’ device because a program is still using it. Close any programs that might be using the device, and then try again later.”

I tried quite a number of possible solutions I found on the internet, but none worked for me — until this one below. I’ve copied the solution in full, in case this information is no longer available at the URL at some time in the future (original URL where I found the answer: http://superuser.com/questions/36716/how-to-safely-remove-a-usb-drive-when-windows-cant-stop-your-generic-volume).


Simple fix (Windows 7 Professional 64-bit):

  1. Change the drive letter, and if you want to keep the same letter, change it back.
  2. The drive can now be unmounted.

When you change the drive letter, it disconnects the drive from all processes that might be using it, as the warning message states. Once that happens, you can then unmount it the usual way.

If you don’t know how to change drive letter, follow these instructions.

  1. Control Panel –> Administrative Tools –> Computer Management –> Storage –> Disk Management (wait ~10 seconds for information to appear.)
  2. Select the problem drive under volume heading.
  3. Scroll to that drive in the lower part of window.
  4. Right-click on the drive, and select Change Drive Letter and Paths.
  5. Change the drive letter to one not reserved for another drive.
  6. Acknowledge the warning message.
  7. If you wish the drive to retain the original letter, simply switch it back. The drive can now be unmounted.


[Link last checked February 2017]


Telstra service status

February 15, 2017

For my Aussie readers: If you’re having a problem with your Telstra landline, you can enter your postcode into this site (http://servicestatus.telstra.com/) and get a status update. There are three ‘buttons’ at the top of the screen — current interruptions/maintenance, scheduled maintenance, and completed maintenance. The service they’re referring to is landline voice calls ONLY, not ADSL internet.

And why did I find this out? Each of the three calls I made at various times today and to various numbers gave me a message that the ‘service to the telecoms network I was calling was temporarily congested, and please try again later’.

So I called iinet who my phone is through, and their 13xxxx number worked straight away from my landline. The lovely support person I spoke to said Telstra keep the 13xxxx numbers free in case of emergency as they’re ‘more important’, and told me about this Telstra site. Sure enough, we have ‘scheduled maintenance’ going on right now (‘Customers may experience difficulties making and receiving calls using their home phone service’) and it’s expected to last from 15 to 28 Feb (!!!). However, she said typically Telstra work on one part of the exchange for a day, which means we might only be down for the day. Fingers crossed. Meantime, Telstra gave us NO notification that the phone would be out, nor do they notify iinet of such outages.


Methods for converting a scanned image of text into text

February 7, 2017

A few years ago, I documented how to use Adobe Acrobat’s optical character recognition (OCR) function to convert an image of text into actual text you can edit. I’ve since found other (free) methods to do this; hopefully one of these may work for you. My preferred method is OneNote, because it’s quick and easy and secure (if you’re using Microsoft Office installed on your computer).


  • None of the methods I tried gave 100% perfect results (but then, paid-for OCR software isn’t 100% either), but all were much quicker and easier than retyping the text. You’ll need to compare the results against the original PDF/image and fix the (hopefully few) errors that didn’t convert.
  • Online services have the added risk that you don’t know what happens to the files you upload, so be aware that there may be a ‘cost’ for ‘free’.

Use online conversion software

A quick and free option is available from http://www.onlineocr.net. You can upload and convert up to 15 PDFs/images (up to 5 MB per file) per hour without registering; you have to register if you want to do more than that. Outputs include Microsoft Word, Excel, and plain text.

I found it quick and easy to use, and the results were acceptable.

Use Google Docs

If you have a Google account, use your Google Drive. Then follow these instructions: https://support.google.com/drive/answer/176692?hl=en. (If this link no longer works, do this: Upload your image file to your Google Drive, then right-click on the image and select Open with > Google Docs.)

Once you’ve converted the image to a document, you’ll see the original image at the top of the document and might assume nothing has happened. Scroll down — you’ll find the converted text below the original image.

Use Microsoft Office OneNote

Add the image into OneNote. Right-click on it and select Copy text from Picture. Then paste it into Microsoft Word, Notepad, or whatever text editing or word processing software you use (you can also post it into OneNote).

OneNote comes with Microsoft Office, so if you have Office, this is a really easy method — you don’t need a Google account, and you don’t need to use an online service where you have no idea what happens to the files you submit.