Excel 中面向开发人员的新增功能

本文档全面概述了 Microsoft Excel 2013 中面向开发人员的新增功能和增强功能。它还提供了让您开始对 Excel 2013 进行编程的其他文章和参考的链接。

**上次修改时间:**2015年9月18日

**适用范围:**Excel 2013 | Excel 2016

简介

如果您要开发自定义工作簿解决方案,您可以使用 Microsoft Excel 2013 中的以下可编程性和功能改进

Excel 中的 Office 外接程序

Microsoft Excel 2013 将网络引入 Excel。新的 Office 外接程序在易于使用的环境中提供丰富、有趣的新方案,以用于动态 Web 应用程序开发。您现在可以使用常用的动态语言(如 Python、PHP、Perl 和 JavaScript)和 Web 开发工具(如 Microsoft Visual Studio 2012)进行应用程序开发。Web 开发还使您可以使用强大的全球开发人员社区,并提供各种代码示例、框架和库,这扩大了不同方案的应用程序适用性。您可以在 Excel、内容外接程序和任务窗格外接程序中创建两种类型的 Office 外接程序。

Office 内容外接程序将基于 Web 的功能集成为可以在文档中显示的嵌入内容。利用 Office 内容外接程序,您可以集成丰富的、基于 Web 的数据可视化、嵌入式媒体方案(如集成 YouTube 视频播放器或图片库)以及其他外部内容功能。图 1 显示了 Excel 2013 中的一个内容外接程序实现。

图 1. Excel 2013 中的内容外接程序

Excel 2013 中的内容应用程序

Office 任务窗格外接程序与 Office 文档并排运行,可让 Office 外接程序开发人员提供上下文信息和功能来增强文档查看和创作体验。例如,Office 任务窗格外接程序可以基于用户在文档中选择的产品名或部件号从 Web 服务查找和检索产品信息。

图 2. Excel 2013 中的任务窗格外接程序

任务窗格应用程序

新的工作表函数

Microsoft Excel 2013 添加了大约 50 个新工作表函数,以实现与开放文档格式 (ODF 1.2) 的兼容性。

您现在可以使用 Web 服务功能(在"Web"功能类别中)以匿名方式访问 REST Web 服务。需要注意的是 FILTERXML 函数,该对话框允许您使用的 XPath 表达式来筛选 WEBSERVICE 函数调用返回的 XML。

快速分析

快速分析功能(如图 3 中所示)是与上下文相关的新增 UI 工具,借助它,只需单击一下即可访问数据分析功能,例如公式、条件格式设置、迷你图、表、图表和数据透视表。您可以编程方式启用或禁用新增快速分析功能在 Excel 2013 中的显示,方法是使用 QuickAnalysis 对象的 Show 和 Hide 方法。

图 3. 快速分析工具

分析镜头

新数据源的可用性

您可以连接到 PowerPivot 支持的一组新数据源,包括 OData 订阅源、Azure、SharePoint 数据订阅源和其他 OLE DB 提供程序。新的 DataFeedConnection、ModelConnection、TextConnection 和 WorksheetDataConnection 对象包含连接到新数据源所需的数据和功能。

备注

关于 Excel 2013 中的新对象和成员的文档尚未编写完成。

使用 DataModel OM

新 DataModel 对象模型(现有 Visual Basic for Applications 对象模型的新增功能)使您可以编程方式加载和刷新数据源。Excel 2010 中引入的此 PowerPivot 模型扩展使您可以集成其他数据源,并且可以编程方式组合多个数据源的数据。此模型中的重要新对象包括 Model、ModelChanges、ModelRelationship 和 ModelTable 对象。

独立创建数据透视图和数据透视表

您可以使用 Excel 2013 中的分离数据透视图与数据透视表功能。基于 OLAP 或 PowerPivot 数据源的数据透视图和数据透视表可进行分离,以便可以独立于任何数据透视表创建数据透视图,并且可通过仅数据透视图体验浏览数据。这与当前范例(数据透视图作为数据透视表的一部分创建)正好相反。这种分离将同时体现在 Excel 2013 客户端和 Microsoft Excel Services 中。

单文档界面

Excel 2013 中单文档界面 (SDI) 的更改具有可编程性意义。SDI 意味着每个工作簿将有其自己的顶级应用程序窗口,并将有其自己的相应功能区。所有现有的应用程序级别窗口方法、事件和属性不受此更改影响。所有现有的工作簿级别窗口方法、事件和属性现在均在该工作簿的顶级窗口运行。

以编程方式打开和关闭动画

您可以使用 Application 对象上的新 EnableMacroAnimations 属性切换动画显示。动画在宏执行过程中默认处于禁用状态。 若要启用动画,请在宏开头添加 Application.EnableMacroAnimations = True。要允许 Excel 在宏执行过程中显示动画,必须为每个宏设置此设置。

时间线

Excel 2013 包括用于筛选模型化数据的新时间线控件。时间线提供了一种可视方式,可查看和更改连续的日期范围并筛选基于透视的对象,如数据透视表和数据透视图。时间线与切片器有关,可扩展与切片器相关的现有对象模型成员。此外,引入了新的两个特定于时间线的对象:TimelineState 和 TimelineViewState 对象。

保护工作表所需的时间增加

保护工作表所需的时间比以前的 Excel 版本更长。当您手动保护工作表时,这并不明显,但是如果您具有反复保护或取消保护工作表的代码,这将成为一个性能问题。

此延迟是由于 Excel 2013 中对密码保护文件的安全增强所致,因为它使用更强的哈希算法 (SHA-512)。在 Office 2010 中,受密码保护文件的默认哈希算法为 SHA1。此更改使受密码保护的 Excel 工作簿比在以前版本中更安全,但可能给某些 Office 开发人员带来性能问题。这是设计使然,因此没有解决方法。

结论

Excel 2013 为开发人员提供丰富的新功能。Office 外接程序提供了一个令人兴奋的机会,开发人员可以将基于 Web 的功能集成到 Excel 2013 中,不论是作为嵌入在工作表中的内容,还是与数据表并排显示。扩展现有 Excel 2013 VBA 对象模型的其他新功能包括快速分析、时间线、新 DataModel OM、新数据源的可用性以及创建相互独立的数据透视图和数据透视表的功能。此外,还提供新的工作表功能以及使用 Web 服务函数匿名访问 REST Web 服务的功能。

其他资源