Microsoft KB Archive/896987

= When you run a VBA macro that uses the Range.Copy or the Range.Paste method on a Range object in Word 2003, the macro does not complete, and you receive an error message =

Article ID: 896987

Article Last Modified on 10/15/2007

-

APPLIES TO


 * Microsoft Office Word 2003

-



Important This article contains information about how to modify the registry. Make sure to back up the registry before you modify it. Make sure that you know how to restore the registry if a problem occurs. For more information about how to back up, restore, and modify the registry, click the following article number to view the article in the Microsoft Knowledge Base:

256986 Description of the Microsoft Windows registry



SYMPTOMS
When you run a Microsoft Visual Basic for Applications (VBA) macro in a document in Microsoft Office Word 2003, if the macro uses the Range.Copy or the Range.Paste method on a Range object, the macro is not completed. Additionally, you receive the following error message:

Runtime Error 4605:

This method or property is not available because the object refers to a protected area of the document.



CAUSE
This problem may occur when all the following conditions are true:
 * The document contains both protected and unprotected sections.
 * The document contains one or more text form fields that do not have the Fill-in enabled option selected. Additionally, the text form field comes before any one of the following elements:
 * A check box form field.
 * A drop-down form field.
 * An ActiveX control from the Control toolbox.
 * The macro programmatically defines a Range object on text in an unprotected section in the document.
 * The macro uses the Range.Copy or the Range.Paste method.



RESOLUTION
This problem was first fixed in a hotfix that is now contained in a service pack. If you installed the latest Office 2003 service pack, you do not have to install the hotfix.

Service pack information
This problem is corrected in Office 2003 Service Pack 2.

To resolve this problem, obtain the latest service pack for Office 2003. For more information, click the following article number to view the article in the Microsoft Knowledge Base:

870924 How to obtain the latest service pack for Office 2003

After you install the service pack, follow the steps that are listed in the &quot;More Information&quot; section to set the EnsureFlagsOfProtectedDocForVbaSel registry key and to enable the hotfix.

How to obtain the hotfix
This issue is fixed in the Word 2003 post-Service Pack 1 Hotfix Package that is dated April 21, 2005. For more information, click the following article number to view the article in the Microsoft Knowledge Base:

897250 Description of the Word 2003 post-Service Pack 1 hotfix package: April 21, 2005

After you install this hotfix, follow the steps that are listed in the &quot;More Information&quot; section to set the EnsureFlagsOfProtectedDocForVbaSel registry key and to enable the hotfix.



WORKAROUND
To work around this problem, turn on the Fill-in enabled option in the text form fields that comes before any one of the elements that are listed in the &quot;Cause&quot; section.

To do this, follow these steps:
 * 1) Start Word 2003, and then open the document or the template.
 * 2) On the Tools menu, click Unprotect Document.
 * 3) Right-click the text form field, and then click Properties.
 * 4) Click to select the Fill-in enabled check box.
 * 5) Click OK to close the Text Form Field Options dialog box.
 * 6) Repeat steps 3 through 5 for each text form field.
 * 7) On the Protect Document task pane, click Yes, Start Enforcing Protection.
 * 8) Save the document or the template.



STATUS
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the &quot;Applies to&quot; section. This problem was first corrected in Office 2003 Service Pack 2.



MORE INFORMATION
Warning Serious problems might occur if you modify the registry incorrectly by using Registry Editor or by using another method. These problems might require that you reinstall your operating system. Microsoft cannot guarantee that these problems can be solved. Modify the registry at your own risk.

To enable this hotfix, follow these steps:  Quit Word 2003. Click Start, click Run, type regedit, and then click OK. Locate and then click to select the following registry subkey:

 After you select the subkey that is specified in step 3, point to New on the Edit menu, and then click DWORD Value. Type EnsureFlagsOfProtectedDocForVbaSel, and then press ENTER.</li> Right-click EnsureFlagsOfProtectedDocForVbaSel, and then click Modify.</li> In the Value data dialog box, type 1, and then click OK.</li> On the File menu, click Exit to quit Registry Editor.</li></ol>

Additional query words: word2003 wd2003 wd2k3

Keywords: kbbug kbfix kbregistry kbmacro kbqfe kbprogramming kbautomation kbvba kboffice2003presp2fix kboffice2003sp2fix kbhotfixserver KB896987

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.