在外接程序设计器中编写代码
在创建工程并为外接程序设计器赋值后,可以添加代码将加载项与宿主应用程序连接起来。此演练将向您展示将加载项与宿主应用程序连接起来所需的典型过程和事件。IDTExtensibility2 接口提供连接这二者所需的 COM 对象和事件。然后,加载项可以使用宿主应用程序所展示的对象模型与宿主应用程序接合。可以在对象浏览器中查看特定应用程序的对象模型。
外接程序设计器中的代码可处理加载项与宿主应用程序的集成。例如,加载或卸载加载项时运行的代码驻留在“外接程序设计器”的模块中。如果加载项中包含窗体,则外接程序设计器还可以包含用于显示窗体的代码。
声明变量和设置过程存根
1.在“工程资源管理器”窗口中,选择 Connect,然后打开“视图”菜单,单击“代码”。清除原来有的代码。
2.在“通用声明”部分,引用可扩展性接口。
Implements IDTExtensibility2
3.添加用于在加载项和宿主之间提供通讯的模块级变量。只要加载了 COM 加载项,赋值为 As Excel.Application 的变量就一直存在,因此,所有过程都可以确定加载项当前正在哪个应用程序中运行。因为 WithEvents 关键字指派给 cbbButton 变量,所以菜单项的 Click 事件过程将在用户单击新菜单项时触发。
'Global object references Public appHostApp As Excel.Application Private WithEvents cbbButton As Office.CommandBarButton |
4.在“代码”窗口中,从“对象”列表中选择 IDTExtensibility2,从“事件”列表中选择 OnConnection。这将创建 OnConnection 事件过程存根。
注意 您必须使由 IDTExtensibility2 界面提供的每个事件中都包括事件过程存根。如果您删除了任何事件过程,工程就无法编译。
5.为下列每个事件添加事件过程存根:
●OnDisconnection
●OnStartupComplete
●OnBeginShutdown
●OnAddinsUpdate
现在就可以为您的加载项添加功能了。