使用扩展对象自动执行 Excel

在 Visual Studio 中开发 Excel 解决方案时,可以在解决方案中使用 主机项主机控件。 这些对象扩展了 Excel 对象模型中的某些常用对象(即 Excel 的主互作程序集公开的对象模型),例如 WorksheetRange 对象。 扩展对象的行为类似于它们所基于的 Excel 对象,但它们向对象添加其他功能,例如新事件和数据绑定功能。

适用于: 本主题中的信息适用于 Excel 的文档级项目和 VSTO 外接程序项目。 有关详细信息,请参阅 Office 应用程序和项目类型提供的功能

宿主项目和宿主控件在 VSTO 外接程序和文档级自定义项中都可用,虽然在每种解决方案中的使用上下文有所不同。 有关详细信息,请参阅 主机项和主机控件概述

Excel 宿主项目

Excel 项目允许你访问多个主机项:

  • Worksheet。 此宿主项包含并表示项目中的工作表。 它还充当托管控件(包括主机控件和 Windows 窗体控件)的容器,并维护有关其表面上控件的信息。 有关详细信息,请参阅 工作表宿主项

  • Workbook。 此宿主项表示项目中的工作簿,并充当工作簿中所有工作表共享的组件的容器。 有关详细信息,请参阅 工作簿托管项

  • ChartSheet。 该宿主项是一个 Excel 工作表,其中仅包含图表,并且会触发事件。

    在设计时将图表工作表作为新工作表添加到 Microsoft Office Excel 文档级自定义项目时,Visual Studio 会自动创建一个ChartSheet宿主项。

    虽然 ChartSheet 主机项是 Excel 中的工作表,但无法向图表工作表中添加任何控件。 如果要在包含图表的工作表上拥有其他控件,请不要使用图表工作表。 相反,可以使用主机控件将图表作为嵌入对象放置在工作表上 Chart 。 有关详细信息,请参阅 图表控件

Excel 主机控件

Excel 有几个主机控件可帮助你创建、组织和自动执行工作簿和工作表。 这些主机控件提供与本机 Excel 对象模型中的对应项没有的事件和数据绑定功能。

有关可在 Excel 项目中使用的主机控件的详细信息,请参阅以下主题: