在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
第二部分:.NET中的Office编程 第3章 Excel编程
自定义Excel的方法
自动执行
COM加载项
COM加载项通常用于添加可用于Excel打开的任何工作簿的应用程序级功能。例如,您可以编写一个COM加载项,它会添加一个菜单项,以便将所选Excel工作表单元中的货币根据当前汇率转换为另一种货币。
Excel有一个COM加载项对话框,使用户可以打开和关闭COM加载项。请注意,通过从“工具”菜单中选择“加载项”访问的对话框不是COM加载项对话框。该对话框用于打开和关闭自动化加载项和XLA加载项,这将在本章后面讨论。要访问COM加载项对话框,必须执行以下步骤:
1.右键单击Excel中的菜单或工具栏,然后从弹出菜单中选择“自定义”,或者从“工具”菜单中选择“自定义”以显示“自定义”对话框。
完成这些步骤后,单击您添加到工具栏的COM加载项工具栏按钮。 COM加载项对话框如图3-1所示。
您可以使用“添加”按钮添加COM加载项,并使用“删除”按钮删除它们。通常,您将无法使用此对话框来管理COM加载项。相反,您将通过使用为COM加载项创建的安装程序操作注册表设置来安装和删除COM加载项。 Excel通过从注册表读取来发现已安装的COM加载项。您可以通过转到“Windows开始”菜单并选择“运行”来查看计算机上的注册表。在“运行”对话框中,键入要运行的程序的regedit,然后单击“确定”按钮。 Excel在HKEY_CURRENT_USER \ Software \ Microsoft \ Office \ Excel \ Addins下的注册表项中查找COM加载项。 Excel还在HKEY_LOCAL_MACHINE \ Software \ Microsoft \ Office \ Excel \ Addins下的注册表项中查找COM加载项。 COM加载项在HKEY_LOCAL_MACHINE下注册的COM加载项不会显示在COM加载项对话框中,用户无法打开或关闭。建议您不要在HKEY_LOCAL_MACHINE下注册COM加载项,因为它隐藏了用户的COM加载项。 COM加载项在第23章“开发Word和Excel的COM加载项”中有详细的讨论。 自动化加载项 用于Office代码的Visual Studio工具 VSTO对工作簿后面的代码的支持将在本书第三部分中详细讨论。 智能文档和XML扩展包 图3-2 Excel中的XML扩展包对话框
当XML扩展包附加到工作簿时,Excel加载关联的代码并在打开该工作簿时运行它。 智能文档解决方案可以在“文档操作”任务窗格中创建自定义用户界面。 您可以通过从视图菜单中选择任务窗格来查看Excel中的任务窗格。 图3-3显示了Excel中的自定义文档操作任务窗格。
可以在C#或Visual Basic中从头开始编写智能文档解决方案。这本书没有涵盖这个方法。相反,本书着重于VSTO方法,该方法旨在使智能文档开发更容易,并允许您使用Windows窗体创建自定义文档操作任务窗格。第15章“使用动作窗格”,更详细地讨论了这一功能。 智能标签 智能标记DLL包含Excel使用的两种类型的组件:识别器和关联操作。识别器确定工作簿中的哪些文本被识别为智能标记。一个动作对应于弹出菜单中显示的菜单命令。 可以创建一个识别器来告诉Excel识别股票代码符号(如MSFT股票代码),并显示一组可用于该符号的动作:买入,卖出,获取最新价格,获取历史等上。例如,“获取历史记录”操作可以启动Web浏览器来显示被识别的股票符号的股票历史网页。 识别器识别某些文本时,Excel会在相关单元格的右下角显示一个小三角形。如果用户将鼠标悬停在单元格上,则单元格旁边会出现一个弹出菜单图标,用户可以单击该菜单图标,以下载识别的文本文件的操作菜单。图3-4显示了一个示例菜单。选择一个动作后,Excel会调用相关联的操作来执行代码。
智能标签从“自动更正”对话框的“智能标签”页面进行管理,如图3-5所示。 您可以通过从“工具”菜单中选择“自动更正选项”来显示“智能标记”页面。 在这里,用户可以打开和关闭单个识别器,以及控制与智能标签如何在工作簿中显示的其他选项。
VSTO提供了一个简单的模型,用于创建在工作簿或模板级别工作的智能标记。第16章“使用VSTO中的智能标签”,更详细地介绍了使用智能标签的VSTO模型。 将Smart Tag识别器和动作类写入可在应用程序级别工作的DLL,但它比VSTO模型复杂得多。第16章还描述了这种方法。 XLA加载项 服务器生成的文档 第18章“服务器数据场景”介绍了使用ServerDocument在服务器上生成文档。 研究服务
Excel使开发人员能够编写一个名为研究服务的特殊Web服务,实现由Excel定义的一组Web方法。 可以在Excel中注册研究服务,并在Office的研究任务窗格中使用。 例如,您可以编写一个在公司数据库中搜索搜索字词的研究服务。 第6章“编程词”讨论了更详细地创建研究服务。 |
请发表评论