MORE INFORMATION
In Microsoft Excel 98 Macintosh Edition, you can create a reference from
one workbook to another workbook or to an add-in by following these steps:
- 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 programming examples for illustration only, without warranty either expressed or implied. This includes, but is not limited to, the implied warranties of merchantability or fitness for a particular purpose. This article assumes that you are familiar with the programming language that is being demonstrated and with the tools that are used to create and to debug procedures. Microsoft support engineers can help explain the functionality of a particular procedure, but they will not modify these examples to provide added functionality or construct procedures to meet your specific requirements.
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 references Book2, you receive the error message if a
Visual Basic macro executes the following line of code:
Workbooks.Open FileName:="Book2"
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 98 Macintosh Edition, 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 98 Macintosh Edition 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 that is 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 to change the
reference to refer to each copy of the add-in. By doing this, you can
prevent this problem from occurring.