MORE INFORMATION
In Microsoft Excel 97, you can create a reference from one workbook to
another workbook or to an add-in by doing the following:
- Switch to the workbook from which you want to create the reference.
- On the Tools menu, point to Macro, and then click Visual Basic Editor.
- On the Tools menu, click References.
- In the References dialog box, select the check box to the left of the
file for which you want to create the reference. If the file is not
listed, click Browse, select the file in the Add Reference dialog box,
and then click Open.
- When you are done, click OK.
A workbook that contains a reference to another workbook or to an add-in is
a "referencing" workbook. A workbook or add-in that is referred to
by another workbook is a "referenced" workbook.
Errors Opening Referenced Workbooks or Add-Ins with Visual Basic Macros
Microsoft provides examples of Visual Basic for Applications procedures for
illustration only, without warranty either expressed or implied, including,
but not limited to the implied warranties of merchantability and/or fitness
for a particular purpose. The Visual Basic procedures in this article are
provided 'as is' and Microsoft does not guarantee that they can be used in
all situations. While Microsoft support professionals can help explain the
functionality of a particular macro, they will not modify these examples to
provide added functionality, nor will they help you construct macros to
meet your specific needs. If you have limited programming experience, you
may want to consult one of the Microsoft Solution Providers. Solution
Providers offer a wide range of fee-based services, including creating
custom macros. For more information about Microsoft Solution Providers,
call Microsoft Customer Information Service at (800) 426-9400.
If you attempt to use a Visual Basic for Applications macro to open a
workbook or add-in that is already referenced by another open workbook, you
may receive the following error message:
Run-time error '1004':
This workbook is currently referenced by another workbook and cannot
be closed.
For example, if Book1.xls references Book2.xls, you receive the error
message if a Visual Basic macro executes the following line of code:
Workbooks.Open FileName:="Book2.xls"
To prevent the error message from appearing, modify the Visual Basic code
to the following:
On Error Resume Next ' Prevents the error message.
Workbooks.Open FileName:="Book2.xls" ' Opens the workbook or add-in.
On Error GoTo 0 ' Restores normal error handling.
Errors Closing Referenced Workbooks or Add-Ins
In Microsoft Excel 97, you cannot close a referenced workbook or add-in if
the referencing workbook is open. If you attempt to do so, you receive one
of the following error messages:
This workbook is currently referenced by another workbook and cannot
be closed.
Run-time error '1004':
This workbook is currently referenced by another workbook and cannot
be closed.
For more information about this problem, please see the following article
in the Microsoft Knowledge Base:
159794 XL97: Cannot Programmatically Close Referenced Workbook
Errors When Multiple Users Reference the Same Workbook or Add-In
Because Microsoft Excel 97 automatically opens referenced workbooks and
add-ins, you may experience problems if multiple users reference the same
copy of a workbook or an add-in. This problem may occur if you create a
reference to a workbook or to an add-in stored on a network server, or if
you open a workbook that contains this kind of reference.
The first user who creates the reference does not receive an error message.
However, all users who subsequently create a reference or open a workbook
that contains this kind of reference may receive the following error
message:
'<Filename>' is being modified by
<First user's name>
Open as Read-Only, or choose Notify to be alerted when it is
available.
If you click Cancel in the File Reservation dialog box, you may also
receive the following error message:
Can't add a reference to the specified file.
If you use a Visual Basic macro to open the referencing workbook, the
previous error message may not appear immediately, and the workbook is
opened without any problems. When the error message does appear, click
Read-Only or Notify.
If multiple users share the same copy of an add-in, you may want to give
each user a copy of the add-in, and then ask each user change the reference
to refer to each copy of the add-in. By doing this, you can prevent this
problem from occurring.