Hi, Enoch,
That depends very much on what the macro is doing and how it does it.
For example, if it's doing Find/Replace, you would assign a Range object to
the first page and use that object's .Find method, with the .Wrap parameter
set to wdFindStop so it doesn't continue past the end of the range. (Note
that this is a change in the basic macro and probably can't be done by
"wrapping" an existing macro.)
In some other cases you might want to have the wrapping macro check that the
Selection (the insertion point or selected text) is on page 1, and
immediately exit if it isn't. You can do that check by looking at the value
of Selection.Information(wdActiveEndPageNumber) or
Selection.Information(wdActiveEndAdjustedPageNumber).
There may be other methods, depending on what you're doing.