XL: Controlling How Add-in Macros Are Loaded During Startup
ID: Q100616
|
The information in this article applies to:
-
Microsoft Excel for Windows, versions 4.0, 4.0a, 5.0
-
Microsoft Excel for the Macintosh, versions 4.0, 5.0
SUMMARY
In Microsoft Excel, you can use the Add-in Manager to select add-in macros
that you want to have available when you start Microsoft Excel.
With the Add-in Manager, you can use add-ins that are supplied with
Microsoft Excel or you can use add-ins that you've created on your own. The
Add-in Manager sets up the add-in to either load or have its custom
commands and functions available in Microsoft Excel upon startup. In the
latter case, the add-in is not actually loaded until you select one of its
custom commands or functions. This kind of loading saves time and memory
when you start Microsoft Excel.
The Add-in Manager sets up the way your add-in loads by writing appropriate
commands to the settings file. (In Microsoft Excel for Windows, this is the
EXCEL4.INI or EXCEL5.INI file, depending on the version you use and in
Microsoft Excel for the Macintosh, this is the Excel Settings (4) file.)
The commands that are written to your settings file are determined by
defined names on your add-in macro sheet.
MORE INFORMATION
To add your add-in macro sheet to the Add-in Manager so that it is
available when you start Microsoft Excel, choose Add-ins from the Options
menu and select the Add button. Select the add-in filename, choose OK and
then choose Close.
When you add an add-in to the Add-in Manager, the Add-in Manager checks for
the following defined names and performs the specified action.
NOTE: The names that are preceded by a double underline; this is how they
should be entered into the Name box in the Define Name dialog box. One or
all of these names can be used on the same add-in macro sheet.
__DemandLoad
Use this defined name when your add-in contains custom function macros.
When you add your add-in to the Add-in Manager startup list, an OPEN=
statement containing a /F switch plus the name of your add-in and its path
is written to the Microsoft Excel section of the settings file. For
example, in the following statement
OPEN=/F C:\EXCEL\ANALYSF.XLA
the /F switch places all of the custom functions contained on the add-in
sheet in the Paste Function dialog box and __DemandLoad prevents the add-in
from loading until you recalculate or enter one of its functions. If your
add-in macro also contains command macros, you must use the __Command
and/or __Menu defined names to have your custom commands added to the
appropriate menus.
NOTE: How you define __DemandLoad in the Refers To box in the
Define Name dialog box is not important; you can use the Boolean
value of TRUE, for example. If you use a value of FALSE,
__DemandLoad behaves the same as if you use a value of TRUE.
__Command
Use this defined name when your add-in contains command macros that you run
using custom menu commands. The custom commands are added to specified
menus when you start Microsoft Excel (although the add-in macro sheet is
not actually loaded until you select one of the commands). This loading
procedure saves time and memory when you start Microsoft Excel.
The Add-in Manager writes your __Command definition in the appropriate
format to the Init Commands section of your settings file. Entries in the
Init Commands section add custom commands to specified menus. The
definition for __Command must refer to a horizontal array containing the
following information (only the first 4 are required):
<Menu_Bar_Num> Menu bar number
<Menu Name> Menu the command should be added to
<Command Name> Name of the command to be added
<Macro text> Name of the macro to run when command is selected
<Position> Position of command on the menu
<Key> Macro shortcut key
<Status> Message to be displayed on the Status bar
<Help> Help topic number
The array can be a cell range or an array formula. Assume your add-in
contains a SalesRpt macro that runs when you select Create Report from the
Options menu. You can enter the following and define __Command as
=$B$1:$E$1 (placed in the Refers To box in the Define Name dialog box),
B1: 1 C1: Options D1: Create Report E1: SalesRpt
or you can enter an array formula in the Refers To box:
={1,"Options","Create Report","SalesRpt"}
If you have more than one custom command to add, use sequential names
beginning with __Command, then __Command1, __Command2, and so on.
__Menu
The __Command defined name must be defined on the add-in sheet for the
__Menu definition to be added to the appropriate section of the settings
file.
Use this defined name when your add-in creates a custom menu. The Add- in
Manager writes the __Menu definition in the appropriate format to the Init
Menus section of your settings file. Like the definition for __Command,
__Menu must refer to a horizontal cell range or array formula containing
the following information:
<Menu_Bar_Num> Number of the bar you want to add the menu to
<New Menu> The name of your menu
<Position> Position of the menu on the bar
For example, if you want to add MyMenu to the right of the File menu on bar
1, you can enter the following and define __Menu as =$B$1:$D$1 (placed in
the Refers To box):
B1: 1 C1: MyMenu D1: 2
or you can enter an array formula in the Refers To box:
={1,"MyMenu",2}
Again, if you have more than one custom menu to add, use sequential names
beginning with __Menu, __Menu1, __Menu2, and so on.
__DeleteCommand
The __Command defined name must be defined on the add-in sheet for the
__DeleteCommand definition to be added to the appropriate section of the
settings file.
Use this defined name to specify built-in Microsoft Excel menu commands
that you want to delete. The Add-in Manager writes the __DeleteCommand
definition in the appropriate format to the Delete Commands section of your
settings file. Like __Command and __Menu, the definition must refer to a
horizontal cell range or array containing the following information:
<Menu_Bar_Num> Number of the bar containing the menu from which
you want to remove the command.
<Menu> The name of the menu containing the command you
want to remove.
<Position> Position of the command on the menu to be removed
For example, if you want to remove the New Window command on the Window
menu, you can enter the following and define __DeleteCommand as =$B$1:$D$1
(in the Refers To box):
B1: 1 C1: Window D1: 1
or you can enter an array formula in the Refers To box:
={1,"Window",1}
Again, if you have more than one built-in command to delete, use sequential
names beginning with __DeleteCommand, __DeleteCommand1, __DeleteCommand2,
and so on.
__LongName
Use this defined name to specify the name you want to see in the Add-in
Manager dialog box when you add your add-in to the startup list. __LongName
can refer to a cell containing the extended name or it can be defined as a
text string. No information is written to the settings file when this name
is on the add-in.
If you want to see "My Add-in" in the Add-in Manager dialog box, enter My
Add-in in cell B1 and define __LongName as =$B$1, or define __LongName as
="My Add-in".
__ReadOnly
This defined name designates that the add-in be read only and prevents you
from changing the original file. The Add-in Manager creates an OPEN= line
for your add-in with an /R switch if your add-in also contains
__DemandLoad. If there is no __DemandLoad name, no information is written
to the settings file. To work correctly, __ReadOnly must be defined as
TRUE.
Each of these settings, with the exception of __LongName, can be added to
the settings file manually. In the Microsoft Windows operating environment,
you can add OPEN= statements, as well as these other settings, to the
EXCEL4.INI or EXCEL5.INI file using a text editor such as Notepad. See the
EXCELINI.TXT file for additional information. If you are using Microsoft
Excel for the Macintosh, the Add-in Manager adds statements to the Excel
Settings (4) file. To make modifications to the Excel Settings (4) file
manually, you must use the ResEdit utility. ResEdit is available through
Macintosh user groups, or the Apple Programmers and Developers Association
(APDA).
REFERENCES
"EXCELINI.TXT"
"SDK User's Guide," page 441
Additional query words:
4.00a 5.0 addin
Keywords :
Version : WINDOWS: 4.0,4.0a,5.0; MACINTOSH: 4.0, 5.0
Platform : MACINTOSH WINDOWS
Issue type :
Last Reviewed: April 5, 1999