Sign in with Microsoft
Sign in or create an account.
Hello,
Select a different account.
You have multiple accounts
Choose the account you want to sign in with.

Consider the following scenario. You record a macro to insert a cover page in a Microsoft Office Word 2007 document. You then run the recorded macro. In this scenario, the cover page is not inserted. Additionally, you receive the following error message:

Runtime Error '5941':

The requested member of the collection does not exist.

Symptoms

Microsoft provides programming examples for illustration only, without warranty either expressed or implied. This includes, but is not limited to, the implied warranties of merchantability or fitness for a particular purpose. This article assumes that you are familiar with the programming language that is being demonstrated and with the tools that are used to create and to debug procedures. Microsoft support engineers can help explain the functionality of a particular procedure, but they will not modify these examples to provide added functionality or construct procedures to meet your specific requirements.

To work around this issue, rewrite the recorded macro to use the Templates class.

To do this in Word 2007, follow these steps:

  1. On the Status bar, click Play Macro.

  2. Under Macro name, click to select the recorded macro, and then click Edit.

  3. Replace the recorded macro code with macro code that resembles the following macro code:

    Sub Macro1()

    For Each mytemplate In Templates
    If mytemplate.Name = "Building Blocks.dotx" Then _
    mytemplate.BuildingBlockEntries("Pinstripes").Insert Where:=Selection.Range, RichText:=True
    Next

    End Sub

    Note If you want to use a different cover page, replace "Pinstripes" with the name of the cover page that you want.

  4. On the File menu, click Close and Return to Microsoft Word.

Workaround

When you record a macro in Word 2007 to insert the "Pinstripes" cover page, Word 2007 records the following macro code:

Sub Macro1()
'
' Macro1 Macro
'
'
ActiveDocument.AttachedTemplate.BuildingBlockEntries( _
"PlaceholderAutotext_0").Insert Where:=Selection.Range, RichText:=True
ActiveDocument.AttachedTemplate.BuildingBlockEntries( _
"PlaceholderAutotext_1").Insert Where:=Selection.Range, RichText:=True
ActiveDocument.AttachedTemplate.BuildingBlockEntries( _
"PlaceholderAutotext_2").Insert Where:=Selection.Range, RichText:=True
ActiveDocument.AttachedTemplate.BuildingBlockEntries("Pinstripes").Insert _
Where:=Selection.Range, RichText:=True
End Sub

More Information

Need more help?

Want more options?

Explore subscription benefits, browse training courses, learn how to secure your device, and more.

Communities help you ask and answer questions, give feedback, and hear from experts with rich knowledge.

Was this information helpful?

What affected your experience?
By pressing submit, your feedback will be used to improve Microsoft products and services. Your IT admin will be able to collect this data. Privacy Statement.

Thank you for your feedback!

×