Excel 解决方案

Visual Studio 提供了可用于创建文档级自定义项和应用程序级外接程序 Microsoft Office Excel 的项目模板。使用这些解决方案可以实现 Excel 自动化、扩展 Excel 功能以及自定义 Excel 用户界面 (UI)。有关文档级自定义项和应用程序级外接程序之间区别的更多信息,请参见 Office 解决方案开发概述

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

本主题提供以下信息:

  • Excel 自动化。

  • 为 Excel 开发文档级自定义项。

  • 为 Excel 开发应用程序级外接程序。

  • 自定义 Excel 的用户界面。

Excel 自动化

Excel 对象模型公开了许多可用于实现 Excel 自动化的类型。例如,您可以通过编程方式创建图表、设置工作表格式以及设置范围和单元格的值。有关更多信息,请参见Excel 对象模型概述

当在 Visual Studio 中开发 Excel 解决方案,可以在解决方案中使用宿主项 和 宿主控件。这些对象可扩展 Excel 对象模型中的某些常用对象,如 Microsoft.Office.Interop.Excel.WorksheetMicrosoft.Office.Interop.Excel.Range 对象。扩展对象的行为类似于它们所基于的 Excel 对象,但它们会为这些对象添加其他事件和数据绑定功能。有关更多信息,请参见使用扩展对象实现 Excel 自动化

为 Excel 开发文档级自定义项

Microsoft Office Excel 的文档级自定义项由与特定工作簿关联的一个程序集组成。程序集通常扩展工作簿通过自定义用户界面和实现 Excel 自动化。与应用程序级外接程序不同的是,应用程序级外接程序与 Excel 本身关联,而在自定义项中实现的功能仅在关联的工作簿在 Excel 中打开时才可用。

若要为 Excel 创建文档级自定义项项目,请使用 Visual Studio 的**“新建项目”**对话框中的“Excel 工作簿”或“Excel 模板”项目模板。有关更多信息,请参见如何:在 Visual Studio 中创建 Office 项目

有关文档级自定义项如何工作的更多信息,请参见文档级自定义项的体系结构

Bb386107.collapse_all(zh-cn,VS.110).gifExcel 自定义项编程模型

为 Excel 创建文档级项目时,Visual Studio 将生成多个作为解决方案基础的类:ThisWorkbook、Sheet1、Sheet2 和 Sheet3。与解决方案相关联的这些选件类表示工作簿和工作表,并且,它们提供了编写代码的起点。

有关这些生成的类和可以在文档级项目中使用的其他功能的更多信息,请参见对文档级自定义项进行编程

为 Excel 开发应用程序级外接程序

Microsoft Office Excel 的应用程序级外接程序包含一个由 Excel 加载的程序集。程序集通常扩展 Excel 通过自定义用户界面和实现 Excel 自动化。与特定工作簿的关联文档级自定义项不同,在外接程序中实现的功能并不局限于单个工作簿。

若要为 Excel 创建应用程序级外接程序项目,请使用 Visual Studio 的**“新建项目”**对话框中的“Excel 工作簿”或“Excel 模板”项目模板。有关更多信息,请参见如何:在 Visual Studio 中创建 Office 项目

有关应用程序级外接程序如何工作的一般信息,请参见应用程序级外接程序的体系结构

链接到视频 有关相关的视频演示,请参见 How Do I: Automate PowerPoint from an Excel Add-in?(如何实现:从 Excel 外接程序实现 PowerPoint 自动化?)。

Bb386107.collapse_all(zh-cn,VS.110).gifExcel 外接程序编程模型

当您创建 Excel 外接程序项目时,Visual Studio 将生成一个名为 ThisAddIn 的类,该类是您的解决方案的基础。此类提供了编写代码的起点,并且它还向外接程序公开 Excel 的对象模型。

有关 ThisAddIn 类以及可以在外接程序中使用的其他 Visual Studio 功能的更多信息,请参见应用程序级外接程序编程

自定义 Excel 的用户界面

可以通过多种不同的方式自定义 Excel 的用户界面。有些选项可用于所有项目类型,而有些选项仅可用于应用程序级外接程序或文档级自定义项。

Bb386107.collapse_all(zh-cn,VS.110).gif适用于所有项目类型的选项

下表列出了可用于文档级自定义项和应用程序级外接程序的自定义选项。

任务

更多相关信息

自定义功能区。

功能区概述

添加 Windows 窗体控件或扩展 Excel 控件绑定到自定义工作簿中工作表的文档级自定义项的,或任何打开应用程序级外接程序的工作簿。

如何:为 Office 文档添加 Windows 窗体控件

如何:向工作表添加 Chart 控件

如何:向工作表添加 ListObject 控件

如何:向工作表添加 NamedRange 控件

Bb386107.collapse_all(zh-cn,VS.110).gif适用于文档级自定义项的选项

下表列出了仅可用于文档级自定义项的自定义选项。

任务

更多相关信息

向工作簿添加操作窗格。

操作窗格概述

如何:向 Word 文档或 Excel 工作簿添加操作窗格

向工作表添加映射到 XML 节点的扩展范围控件。

如何:向工作表添加 XMLMappedRange 控件

Bb386107.collapse_all(zh-cn,VS.110).gif适用于应用程序级外接程序的选项

下表列出了仅可用于应用程序级外接程序的自定义选项。

任务

更多相关信息

创建自定义任务窗格。

自定义任务窗格

Bb386107.collapse_all(zh-cn,VS.110).gif相关主题

标题

描述

Excel 对象模型概述

提供对 Excel 对象模型所提供的主要类型的概述。

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

提供有关可在 Excel 解决方案中使用的扩展对象(由 Visual Studio Tools for Office Runtime提供)的信息。

Excel 解决方案的全球化和本地化

包含有关特殊注意事项的信息,这些注意事项针对将在具有 Windows 非英语设置的计算机上运行的 Excel 解决方案。

Office 文档上的 Windows 窗体控件概述

描述如何向 Excel 工作表添加 Windows 窗体控件。

演练:创建您的第一个 Excel 文档级自定义项

演示如何创建 Excel 的基本文档级自定义项。

演练:创建您的第一个 Excel 应用程序级外接程序

演示如何创建 Excel 的基本应用程序级外接程序。

演练:在运行时在应用程序级项目中向工作表中添加控件

演示如何在运行时使用应用程序级外接程序向工作表添加 Windows 窗体按钮、NamedRangeListObject

Office 开发中的 Excel 2010

提供指向文章和参考有关开发的 Excel 解决方案的文档。这些是不特定于 Office 开发使用 Visual Studio。