Links to External Documents - Name

A

Alan

I have a large/long Word document with many links to an Excel
spreadsheet (fields). each link references the entire path and file
name of the spreadsheet.

Is there a way to make this easy to change, when the name of the
spreadsheet changes? It would be nice to change it in one place only
in the document.

Thanks, Alan
 
D

Doug Robbins - Word MVP on news.microsoft.com

' Macro created 26/10/01 by Doug Robbins to update links in a document
'
Dim alink As Field, linktype As Range, linkfile As Range
Dim linklocation As Range, i As Integer, j As Integer, linkcode As Range
Dim Message, Title, Default, Newfile
Dim counter As Integer

counter = 0
For Each alink In ActiveDocument.Fields
If alink.Type = wdFieldLink Then

Set linkcode = alink.Code
i = InStr(linkcode, Chr(34))
Set linktype = alink.Code
linktype.End = linktype.Start + i
j = InStr(Mid(linkcode, i + 1), Chr(34))
Set linklocation = alink.Code
linklocation.Start = linklocation.Start + i + j - 1
If counter = 0 Then
Set linkfile = alink.Code
linkfile.End = linkfile.Start + i + j - 1
linkfile.Start = linkfile.Start + i
Message = "Enter the modified path and filename following this
Format " & linkfile
Title = "Update Link"
Default = linkfile
Newfile = InputBox(Message, Title, Default)
End If
linkcode.Text = linktype & Newfile & linklocation
counter = counter + 1
End If
Next alink


--
Hope this helps.

Please reply to the newsgroup unless you wish to avail yourself of my
services on a paid consulting basis.

Doug Robbins - Word MVP, originally posted via msnews.microsoft.com
 
A

Alan

Doug,
Thank you. So, I suppose Word requires complete path names
in every external link, and there's no way in Word it can be specified
in one place?

Seems like a poor design. They could have allowed specification
of an absolute address (once in the document) and make all the other
links relative to that. But I guess they did what they did so as to
not restrict the address.

Alan
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top