工作簿宿主项

Workbook 宿主项这种类型将从 Excel 的主互操作程序集扩展 Microsoft.Office.Interop.Excel.Workbook 类型。 Workbook 宿主项提供的属性、方法和事件与 Microsoft.Office.Interop.Excel.Workbook 对象提供的属性、方法和事件完全相同,但它还提供其他功能。

**适用于:**本主题中的信息适用于 Excel 2007 和 Excel 2010 的文档级项目和应用程序级项目。有关更多信息,请参见按 Office 应用程序和项目类型提供的功能

在文档级项目中,有一个表示项目中的工作簿的默认 Workbook 宿主项。 在应用程序级项目中,可以在运行时生成 Workbook 宿主项。

了解文档级项目中的工作簿宿主项

若要访问项目中的工作簿,请使用 ThisWorkbook 类。 通过使用 ThisWorkbook 类,可以访问 Workbook 宿主项的成员,以执行自定义项中的基本任务,如在打开或关闭工作簿时运行代码。 有关更多信息,请参见对文档级自定义项进行编程

在项目中编写代码时,可以从 ThisWorkbook 类开始。 因为此类提供的属性、方法和事件与 Excel 的主互操作程序集中的 Microsoft.Office.Interop.Excel.Workbook 对象提供的属性、方法和事件完全相同,所以也可以使用 ThisWorkbook 访问 Excel 的对象模型。 有关更多信息,请参见 Excel 对象模型概述

在**“解决方案资源管理器”中双击“ThisWorkbook”项目项以显示工作簿设计器,并在“属性”**窗口中查看工作簿的属性和事件。

文档级项目中工作簿宿主项的限制

文档级项目只能包含一个 Workbook 宿主项(即,ThisWorkbook 类)。 无法在设计时向项目添加新的 Workbook 宿主项,并且无法在运行时从文档级自定义项创建新的 Workbook 宿主项。

如果在运行时创建新的 Excel 工作簿,则该工作簿将为 Microsoft.Office.Interop.Excel.Workbook 类型。 因为它不是一个宿主项,所以它不能包含任何宿主控件或 Windows 窗体控件。 有关在运行时创建工作簿的更多信息,请参见如何:新建工作簿

Workbook 宿主项不充当宿主控件的容器。 因此,您不能向工作簿添加任何可见控件,但可以添加 DataSet 等组件,使这些组件可由所有工作表共享。 在文档级项目中,可用于工作簿的组件可从**“工具箱”“组件”选项卡、“数据”选项卡和“所有 Windows 窗体”**选项卡中获得。

提示

Visual Studio 中的 Office 开发工具不支持共享工作簿。

了解应用程序级项目中的工作簿宿主项

在应用程序级项目中,可以在运行时为 Excel 中打开的任何工作簿生成 Workbook 宿主项。 若要生成 Workbook 宿主项,请使用 GetVstoObject 方法。 有关更多信息,请参见在运行时在应用程序级外接程序中扩展 Word 文档和 Excel 工作簿

请参见

概念

在运行时在应用程序级外接程序中扩展 Word 文档和 Excel 工作簿

宿主项和宿主控件概述

工作表宿主项

使用扩展对象实现 Excel 自动化

宿主项和宿主控件的编程限制

其他资源

Office 开发示例和演练