Using variables in a document

B

Bill

I would like to know how to use variables
to make references to other parts of a
document.

For example:

blah blah blah.....(See page {blahpg} for
further discussion)

where blahpg is a variable set in the area of
the document corresponding to the referenced
page.

like: {set blahpg = &curpage} is coded amongst
the text to which the reference is being made.

So, I think the question really is what is the
pseudo variable name used to capture the
current page number, "&curpage".

Or, is my approach entirely wrong for what
I'm trying to accomplish.

Thanks,
Bill
 
G

Greg

Bill,

You need to use a cross reference. Lots of ways to do it, but here is
one.

Go to whatever page blah, blah is described and select the text. Then
Insert>Bookmark. Lets name the bookmark "Blah"

Now go back to your text where you have See page. Put your cursor
after "page" then Insert>Cross Reference. Use Reference Type:
Bookmark
Insert Reference To: Page Number
Select Blah and click insert.
 
B

Bill

Thanks Greg, I thought that maybe bookmarks was
the way it was done when I searched the HELP text,
but the HELP text is really weak when it comes to
examples of how they are used.

Okay, so that works until the document expands with
the addition of additional text/pages. When that happens,
the reference becomes invalid. I.e., the referenced page
does not get updated automatically as the document
expands.

Do I have to do something else?
Bill
 
B

Bill

I found Edit -> Select All -> PF9 that will update
all selected fields. Is that the answer to my last post?
Bill
 
G

Greg Maxey

Bill,

Yes. Here is my boiler plate answer to updating fields.

When a change is made, you can update the field by selecting the field and
pressing F9, or update all fields by pressing CTRL+a (selects all) and
pressing F9, toggling to and from print preview (if "Update Fields" is
checked in the File>Print>Options dialog box), or running a macro something
like:

Sub UpdateFields()
Dim oStory As Range
For Each oStory In ActiveDocument.StoryRanges
oStory.Fields.Update
If oStory.StoryType <> wdMainTextStory Then
While Not (oStory.NextStoryRange Is Nothing)
Set oStory = oStory.NextStoryRange
oStory.Fields.Update
Wend
End If
Next oStory
Set oStory = Nothing
End Sub
 
B

Bill

Got it Greg, thanks again.
Bill


Greg Maxey said:
Bill,

Yes. Here is my boiler plate answer to updating fields.

When a change is made, you can update the field by selecting the field and
pressing F9, or update all fields by pressing CTRL+a (selects all) and
pressing F9, toggling to and from print preview (if "Update Fields" is
checked in the File>Print>Options dialog box), or running a macro
something like:

Sub UpdateFields()
Dim oStory As Range
For Each oStory In ActiveDocument.StoryRanges
oStory.Fields.Update
If oStory.StoryType <> wdMainTextStory Then
While Not (oStory.NextStoryRange Is Nothing)
Set oStory = oStory.NextStoryRange
oStory.Fields.Update
Wend
End If
Next oStory
Set oStory = Nothing
End Sub
 
Top