Excel Services 概述

Excel Services 是一种服务应用程序,可用于在 Microsoft SharePoint 上加载、计算和显示 Microsoft Excel 工作簿。 Microsoft Office SharePoint Server 2007 中首先引入了 Excel Services。

通过使用 Excel Services,可在 SharePoint 门户和仪表板中重用和共享 Excel 工作簿。 例如,金融分析师、业务规划人员或工程师可在 Excel 中创建内容,并通过使用 SharePoint 门户和仪表板与他人共享此内容,而无需编写自定义代码。 可以控制要显示的数据,并可以维护 Excel 工作簿的单个版本。 Excel Services 有四个主要接口:

  • Excel Web Access Web 部件,用于通过使用浏览器查看正在使用的工作簿并与之交互

  • Excel Web Services,用于编程访问

  • 用于自动化和自定义的 ECMAScript (JavaScript, JScript) 对象模型,可驱动 Excel Web Access 控件并帮助构建更具吸引力的集成解决方案,以及为用户提供用户定义的函数,以扩展 ECMAScript (JavaScript, JScript) 对象模型

  • 用于直接通过 URL 访问工作簿部分的表述性状态转移 (REST) API

注意

Excel 互动视图功能已遭禁用。 有关从网站中删除此功能的信息,请参阅 从网页中删除 Excel 交互式视图

还可以使用用户定义函数 (UDF) 扩展 Excel Calculation Services。

注意

有关 Excel Calculation Services 的详细信息,请参阅 Excel Services 体系结构

通过使用Excel Services,只需使用浏览器即可查看实时交互式工作簿。 这意味着你可以保存 Excel 工作簿并从门户网站中与其交互。还可以通过排序、筛选、展开或折叠数据透视表以及传入参数来与基于 Excel 的数据进行交互;这样,就能够对已发布的工作簿执行分析。 无需更改已发布的工作簿即可与工作簿交互,这对报表作者和报表使用者很有价值。Excel Services支持连接到外部数据源的工作簿。 可以将连接字符串嵌入到工作簿中的外部数据源,或将它们集中保存在数据连接库文件中。还可以通过将工作表中的选定单元格设置为可编辑 (参数) 。 当您保存到Excel Services时,选择使其可查看的项目将显示在 Excel Web Access 的“参数”窗格中。 可以在“参数”窗格中更改这些命名区域的值并刷新工作簿。 还可以使用门户的筛选器 Web 部件筛选多个 Web 部件, (Excel Web Access 和其他类型的 Web 部件一起) 。但是,不能使用Excel Services创建新工作簿或编辑现有工作簿。 若要创作用于Excel Services的工作簿,可以使用 Microsoft Excel 2013。

注意

Microsoft Excel Online 属于 Office Online,也支持在浏览器中处理 Excel 工作簿。 有关 Excel Online 的详细信息,请参阅 新 Office 入门

Excel Services 还具有一类 Web 服务。 可以使用 Excel Web Services 加载工作簿、设置单元格和范围中的值、刷新外部数据连接、计算工作表以及提取计算结果(包括单元格值、整个计算工作簿或工作簿快照)。 在 SharePoint 中,还可使用 Excel Web Services 保存和参与协作编辑会话,以及保存副本。

注意

或有关快照的详细信息,请参阅 如何:获取整个工作簿或快照

Excel Services 支持 UDF,这些 UDF 可用于扩展 Excel Calculation Services 的功能(例如,实现自定义计算库或从 Excel Services 本身不支持的 Web 服务和数据源中读取数据)。Excel Services 是一个可伸缩的稳固的企业级服务器,可利用 Excel 提供功能和计算保真度。

方案和功能

Excel Services 支持许多不同的方案和功能,本节对其中一些方案和功能进行了说明。

商业智能门户和工作簿分析

商业智能门户会显示记分卡和报告,使用户能只通过使用浏览器来浏览数据。 SharePoint Server 中的"商业智能中心"功能包括商业智能门户和仪表板功能。 图 1 显示了一个带报告库、图表并已设置关键绩效指标 (KPI) 的报告中心仪表板。

Excel Services还可用于计算服务器上的数据。 Excel Services通过提供在集成的 BI 仪表板上计算和公开基于 Excel 的内容的功能来参与 BI 中心。可以使用 Excel Web Access Web 部件显示 Excel 工作簿,连接到外部数据源,并与工作簿中的数据进一步交互。

图 1 显示一个带筛选器 Web 部件的仪表板和使用 Excel Web Access Web 部件显示的 Excel 工作簿。

图 1. 具有筛选和 Excel 内容的仪表板

具有筛选和 Excel 内容的仪表板

除了参与集成的仪表板外,Excel Services 还可用于显示全部或部分 Excel 工作簿,以使用户能够在熟悉的 Excel 用户界面中与此内容进行交互。 图 2 显示通过参数显示的范围和对用户输入公开的单元格。 通过将特定单元格指定为参数,使用户能够使用右侧窗格中的编辑框来修改工作表中这些单元格的值。 Excel Services 随后将基于新值重新计算工作表。

如果需要使用 Excel 中的某些功能,或者需要使用所有 Excel 功能来分析工作簿,则可单击"在 Excel 中打开"在 Excel 中打开一个工作簿。 也可以在 Excel 中打开一个工作簿以对其进行打印,然后进行脱机使用。

注意

若要使用“在 Excel 中打开”命令打开工作簿,必须拥有“打开”权限。 有关详细信息,请参阅下一部分:管理工作簿,以及 TechNet 上的用户权限和权限级别。 没有“打开”权限的用户仍可以在 Excel 中打开快照。

图 2. 使用“参数”窗格

使用“参数”窗格

还可以使用 Excel Web Access 分析、透视数据并与之交互。

有关 Excel Services 和 SharePoint 中的商业智能功能的详细信息,请参阅 SharePoint Server 帮助中的商业智能文档。

管理工作簿

Excel Services 的工作簿管理和锁定功能使您能够执行以下操作:

  • 仅在安全的中心位置保留一份由受信任的作者创建和更改的工作簿的副本,而不是在每个用户的计算机上保留多个副本。 可以更轻松地通过 Excel、SharePoint 和其他应用程序查找、共享和使用工作簿的正确版本。

  • 保护工作簿模型和后端数据。 可以向用户授予"仅查看"权限以限制对工作簿的访问。 例如,可以阻止用户使用 Excel 打开工作簿,也可以控制用户可在工作簿中查看的内容。 用户可具有对作者要共享的 Excel 工作簿中的内容的基于浏览器的访问权,但无法在 Excel 客户端中打开工作簿、查看公式或查看工作簿中可能具有的支持内容或其他知识属性。

  • 创建工作簿快照。

Excel Services 已针对多个用户和工作簿进行了优化。 它还可以帮助对服务器场中的计算进行负载平衡。

有关使用 Excel Services 管理工作簿的详细信息,请参阅 TechNet 或 SharePoint Server 帮助中的 SharePoint Server 文档。

通过自定义 .NET 应用程序的编程访问

可以创建以下自定义应用程序(例如,ASP.NET 应用程序):

  • 可调用 Excel Web Services 以访问、参数化和计算工作簿。

  • 打开、刷新外部数据、设置单元格或区域、重新计算、与其他应用程序或人员共同参与协作编辑会话、保存和另存为。

  • 使用自定义工作流来计划计算操作或发送电子邮件通知。 (这使用 SharePoint 功能,不是 Excel Services.) 的本机部分

用户定义函数 (UDF)

还可以使用 Excel Services UDF,它使您能够使用单元格中的公式来调用自定义函数,这些函数是用托管代码编写的并将部署到 SharePoint Server。

有关Excel Services中的 UDF 的详细信息,请参阅了解 UDF Excel Services

ECMAScript (JavaScript, JScript)

还可以使用 Excel Services 中的 JavaScript 对象模型自动执行、自定义和驱动 Excel Web Access Web 部件控件。 可使用 JavaScript 对象模型生成更引入注目的集成的解决方案。

JavaScript 用户定义函数 (UDF)

Microsoft Excel Services 和 Microsoft SharePoint 中的新增功能、ECMAScript (JavaScript、JScript) UDF 使您能够在 SharePoint 中使用嵌入的 Excel 工作簿或 Excel Web AccessExcel Web Access Web 部件时向 Excel 添加自定义函数。 除了在 Excel 中使用的内置函数之外,可以使用可从 中的公式内部调用的 JavaScript UDF 来添加您自己的自定义函数。

JavaScript UDF 类似于可以为 Microsoft Excel 创建的 UDF 。 区别在于,JavaScript UDF 仅用于嵌入在网页中的工作簿中,并且仅存在于该网页上。

JavaScript 对象模型

Excel Services JSOM API 现在包括:

  • 重新加载嵌入的工作簿的功能。 现在您可以将嵌入的工作簿重置为以下工作簿文件中的数据。

  • 用户创建的浮动对象。 EwaControl 对象包含新的方法,可用于添加/删除您创建的浮动对象。

  • 对 Ewa 控件的可查看区域的更多控制。

  • SheetChanged 事件。 在对表单进行更改时(例如,更新单元格,删除或清除单元格,复制、剪切或粘贴范围以及撤消/重做操作),将引发此事件。

  • 支持数据验证。 您现在可以验证由用户输入的数据。

REST API

可在 Excel Services 中使用 REST API,通过 URL 直接访问工作簿部件或元素。 利用 Excel Services REST API 中内置的发现机制,开发人员和用户能够手动或以编程方式浏览工作簿内容。

有关 Excel Services 中的 REST API 的详细信息,请参阅 Excel Services REST API

REST ODATA

Microsoft Excel Services 和 Microsoft SharePoint 中的新增功能通过使用 Excel Services REST API 中的新 OData 功能,可以将 Excel 工作簿中的表请求为 OData。 例如,若要使用 REST 调用请求有关SampleWorkbook.xlsx工作簿中可用资源的 Excel 元数据,请使用以下语法。

http://<ServerName>/_vti_bin/ExcelRest.aspx/Docs/Documents/SampleWorkbook.xlsx/model 若要详细了解 REST API,请参阅

SharePoint SDK 文档中的 Excel Services 2010 REST API 文档。

若要使用 OData 请求有关 SampleWorkbook.xlsx 工作簿中的可用资源的元数据,请使用相同的 REST 语法,只不过将 /Model 替换为 /Odata,如下面的请求所示。

http://<ServerName>/_vti_bin/ExcelRest.aspx/Docs/Documents/sampleWorkbook.xlsx/OData

随后,可以使用 OData 系统查询选项,获取工作簿内表的特定信息。

另请参阅