Learn more about Allen...
Please Note: This article is written for users of the following Microsoft Word versions: 97, 2000, 2002, and 2003. If you are using a later version (Word 2007 or later), this tip may not work for you. For a version of this tip written specifically for later versions of Word, click here: Unlinking an Excel Chart Automatically.
Glenn asked if there was a way to have an Excel chart automatically "unlink" itself. He has a template that has a linked Excel chart in it. When he creates a new document based on the template, he wants the chart to update (which it does), but then unlink itself so that it doesn't update again when the document is later opened.
The best way to handle this is with a macro, but a few "ground rules" need to be set first. The Word template must have the Excel chart inserted using Paste Special, as an inline shape (don't have the chart floating on the drawing layer). Also, you should use Edit | Links to set the link update for the chart to Manual.
Now, add the following macro to the ThisDocument module for the template:
Private Sub Document_New() Dim ilshp As InlineShape Application.DisplayAlerts = False ' cycle through all inline shapes For Each ilshp In ActiveDocument.InlineShapes ' ignore error if inline shape has no link On Error Resume Next With ilshp.LinkFormat .Update ' update link .BreakLink ' break link End With ' reset error On Error GoTo 0 Next Application.DisplayAlerts = True End Sub
When a new document is created from the template, the user is asked to enable macros (they should enable them). The macro isn't copied into the new document; it stays only in the template. What the macro does is to update any inline shapes that have external links and then break the links.
WordTips is your source for cost-effective Microsoft Word training. (Microsoft Word is the most popular word processing software in the world.) This tip (8174) applies to Microsoft Word 97, 2000, 2002, and 2003. You can find a version of this tip for the ribbon interface of Word (Word 2007 and later) here: Unlinking an Excel Chart Automatically.
Comprehensive VBA Guide Visual Basic for Applications (VBA) is the language used for writing macros in all Office programs. This complete guide shows both professionals and novices how to master VBA in order to customize the entire Office suite for their needs. Check out Mastering VBA for Office 2010 today!