Word 2003 embedded/linked objects

G

Guest

I am trying to embed/link attach a footer into all our documents. It contains
a list of our lawyers names so when any leave or a new one joins I would only
need to change 1 file not all our templates.
Linking works into the body of a document but not into a footer but Word
asks to confirm before opening
 
C

CyberTaz

It sounds like you're dealing with letterhead. What you need to look into is
creating a Template that includes the standard content & base new docs on
it. When changes take place open, edit & re-save the template. Have a look
here:

http://sbarnhill.mvps.org/WordFAQs/Letterhead.htm

Another option: Create the list as an AutoText Item & insert it whenever
necessary based on the name you assign to it. To update it edit a copy of
the list & re-save with the same name. Check it out in Word Help searching
on the keyword Autotext.
 
D

Dawn Crosier, Word MVP

I would suggest you re-think your process. You can insert information into
either the header or footer of a document using macros. I would not suggest
having your masthead change on existing documents, documents that were sent
to the court should reflect exactly what they looked like when they were
originally sent to the court, not reflect the current partners / associates
of today.

So, I would have everyone create New Letters using a New Template which can
automatically insert the proper information. You can have a number of
templates insert the same block of information, I use a formatted table to
insert our standard "letterhead" information. I then only have to update the
one document and all new documents get the proper information while older
documents remain constant.

--
Dawn Crosier
Microsoft MVP
"Education Lasts a Lifetime"

This message was posted to a newsgroup, Please post replies and questions
to the group so that others can learn as well.
I am trying to embed/link attach a footer into all our documents. It
contains
a list of our lawyers names so when any leave or a new one joins I would
only
need to change 1 file not all our templates.
Linking works into the body of a document but not into a footer but Word
asks to confirm before opening
 
G

Guest

Sorry CyberTaz that does not really help me. Thanks anyway. I probably did
not provide enough information. We use a document management solution that
takes an existing library document and merges client data into them from a
database. I was trying to get Word to lift a fresh copy of the footer at the
point of document creation from 1 common source as we have 500 plus library
documents not just a few templates. I think of it like signitures in Outlook
Express where all users link to a file on the server and if I edit it the
next and all subsequent emails get the new signiture. We use an html file to
achieve this. Any other ideas would be great
 
G

Guest

Dawn you are right about previous documents I only want to change new ones.
Please advise further about how to do your idea with a table acting as
source to the footer.
I have provided further details to Taz above also
After the last personnel change I had to edit 500 plus footers, not my idea
of fun!!
 
D

Dawn Crosier, Word MVP

Sorry it has taken me so long to get back to you. I've been out of town and
did not have the relevant code at hand - I've since changed that. <smile>

This code is contained in a module in the template.

Anyway, here's what I do. I have a separate document which contains a table
which has the letterhead information in it. The following code runs as the
template is opened. I don't put it in a header or footer, but you can. I do
however, stick the current date in the header so you can see how I do
that....

Sub AutoNew()

Dim appWord As Word.Application

Dim strLetter As String

Dim strTestFile As String

Dim strDocsPath As String

Dim strTemplatePath As String

Dim strFileName As String

Dim strDate As String



On Error GoTo EH



Application.ScreenUpdating = False

Set appWord = GetObject(, "Word.Application")

strFileName = "LetterHeadTable.doc"

strDocsPath = DocsDir

strTemplatePath = "O:\" 'TemplateDir

strLetter = strTemplatePath & strFileName



appWord.Documents.Open strLetter

ActiveDocument.Tables(1).Range.Select

Selection.Copy

ActiveDocument.Close saveChanges:=wdDoNotSaveChanges

Selection.GoTo What:=wdGoToBookmark, Name:="letterhead"

Selection.Paste

FormatLetterheadTable 'procedure which hides the borders



' Automatically insert the current date on the document as a static object.

Selection.GoTo What:=wdGoToBookmark, Name:="Date"

Selection.Find.ClearFormatting

Selection.InsertDateTime DateTimeFormat:="MMMM d, yyyy", InsertAsField:=
_

False, DateLanguage:=wdEnglishUS, CalendarType:=wdCalendarWestern, _

InsertAsFullWidth:=False



frmSelectInsideAddress.Show ' userform which displays a combo box with user
names_

'so the letterhead can be personalized with autotext entries
containing phone / email / etc.



'Automatically insert the current date into the second page header

strDate = Format(Date, "MMMM d, yyyy")

ActiveDocument.Sections(2).Headers(wdHeaderFooterPrimary).Range.InsertBefore
strDate



Unload frmSelectInsideAddress



'Handle Errors Gracefully

EH_Exit:

Exit Sub



EH:

If Err = 429 Then

'Word is not running; open Word with CreateObject

Set appWord = CreateObject("Word.Application")

Resume Next

ElseIf Err = 5151 Then

MsgBox "The template you requested is no longer available. If you
believe this" _

& vbCrLf & " to be an error, contact the Help Desk", , "Document
Name or Path No Longer" _

& " Available."

Resume EH_Exit

Else

MsgBox Err.Number & ": " & Err.Description

Resume EH_Exit

End If



Application.ScreenRefresh



End Sub



Public Function DocsDir() As String

On Error GoTo ErrorHandler



Set appWord = GetObject(, "Word.Application")

DocsDir = appWord.System.PrivateProfileString("", _

"HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell
Folders", _

"Personal") & "\"



ErrorHandlerExit:

Exit Function



ErrorHandler:

If Err = 429 Then

'Word is not running; open Word with CreateObject

Set appWord = CreateObject("Word.Application")

Resume Next

Else

MsgBox Err.Number & ": " & Err.Description

Resume ErrorHandlerExit

End If

End Function




--
Dawn Crosier
Microsoft MVP
"Education Lasts a Lifetime"

This message was posted to a newsgroup, Please post replies and questions
to the group so that others can learn as well.

Dawn you are right about previous documents I only want to change new ones.
Please advise further about how to do your idea with a table acting as
source to the footer.
I have provided further details to Taz above also
After the last personnel change I had to edit 500 plus footers, not my idea
of fun!!
 
G

Guest

Dawn I will give that a try. It may take a while but I will crack this one.
Thanks for your help.
 
L

lpatt

kob in uk said:
I am trying to embed/link attach a footer into all our documents. It contains
a list of our lawyers names so when any leave or a new one joins I would only
need to change 1 file not all our templates.
Linking works into the body of a document but not into a footer but Word
asks to confirm before opening
 
L

lpatt

I know its been a long time, but I'm wondering did you ever get this to work
for you? I am doing the same thing (not in a footer, but embedded in the
document). I can not get it to work for me without turning the link into a
picture that takes up a whole page. I'm curious how/if you resolved this.
 
K

kob in uk

Hi
In the end I employed a consultant to write a macro that deletes the footer
and replaces it with the new version so I only have to change the master copy
 
G

Graham Mayor

How about storing the text in a bookmarked area of a document then use an
includetext field to insert the content or the bookmark?

--
<>>< ><<> ><<> <>>< ><<> <>>< <>><<>
Graham Mayor - Word MVP

My web site www.gmayor.com

<>>< ><<> ><<> <>>< ><<> <>>< <>><<>
 

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