Excel Services Overview
Published: May 2010
Excel Services is a service application that enables you to load, calculate, and display Microsoft Excel workbooks on Microsoft SharePoint Server 2010. Excel Services was first introduced in Microsoft Office SharePoint Server 2007.
By using Excel Services, you can reuse and share Excel workbooks on SharePoint Server 2010 portals and dashboards. For example, financial analysts, business planners, or engineers can create content in Excel and share it with others by using an SharePoint Server 2010 portal and dashboard—without writing custom code. You can control what data is displayed, and you can maintain a single version of your Excel workbook.
There are four primary interfaces for Excel Services:
An Excel Web Access Web Part, which enables you to view and interact with a live workbook by using a browser
Excel Web Services for programmatic access
A Representational State Transfer (REST) API for accessing workbook parts directly through a URL
You can also extend Excel Calculation Services by using user-defined functions (UDFs).
For more information about Excel Calculation Services, see Excel Services Architecture.
By using Excel Services, you can view live, interactive workbooks by using only a browser. This means that you can save Excel workbooks and interact with them from within portal sites.
You can also interact with Excel-based data by sorting, filtering, expanding, or collapsing PivotTables, and by passing in parameters; this provides the ability to perform analysis on published workbooks. You can interact with a workbook without changing the published workbook—which is valuable for report authors and report consumers.
Excel Services supports workbooks that are connected to external data sources. You can embed connection strings to external data sources in the workbook or save them centrally in a data connection library file.
You can also make selected cells in worksheets editable by making them named ranges (parameters). Items that you choose to make viewable, when you save to Excel Services, appear in the Parameters pane in Excel Web Access. You can change the values of these named ranges in the Parameters pane and refresh the workbook. You can also use the portal's filter Web Part to filter several Web Parts (Excel Web Access and other types of Web Parts) together.
However, you cannot use Excel Services to create new workbooks or to edit existing workbooks. To author a workbook for use with Excel Services, you can use Microsoft Office Excel 2007 or Microsoft Excel 2010.
Microsoft Excel Web App, part of Microsoft Office Web Apps, also supports Excel workbooks in the browser. For more information about Excel Web App, see Getting Started—Office Web Apps.
Excel Services also has a Web service. You can use Excel Web Services to load workbooks, set values in cells and ranges, refresh external data connections, calculate worksheets, and extract calculated results (including cell values, the entire calculated workbook, or a snapshot of the workbook). In SharePoint Server 2010, you can also save, save a copy, and participate in collaborative editing sessions by using Excel Web Services.
For more information about snapshots, see How to: Get an Entire Workbook or a Snapshot.
Excel Services supports UDFs, which you can use to extend the capabilities of Excel Calculation Services—for example, to implement custom calculation libraries or to read data from Web services and data sources that are not natively supported by Excel Services.
Excel Services is designed to be a scalable, robust, enterprise-class server that provides feature and calculation fidelity with Excel.
Excel Services supports many different scenarios and features, some of which are described in this section.
Business Intelligence Portal and Workbook Analysis
A business intelligence portal displays scorecards and reports, and enables users to explore data by using only a browser. The BI Center feature in SharePoint Server includes a business intelligence portal and dashboard functionalities. Figure 1 shows a report center dashboard with a library of reports, a chart, and Key Performance Indicators (KPIs) already set up.
Excel Services also enables you to calculate data on the server. Excel Services participates in the BI Center by providing the ability to calculate and expose Excel-based content on integrated BI dashboards.You can display an Excel workbook by using the Excel Web Access Web Part, connect to external data sources, and further interact with the data in the workbook.
Figure 1 shows a dashboard with a filter Web Part, and Excel workbooks displayed by using Excel Web Access Web Parts.
In addition to participating in integrated dashboards, Excel Services can also be used to display all or part of Excel workbooks to enable users to interact with that content in the familiar Excel user interface. Figure 2 shows a range being displayed, and cells being exposed for user input through parameters. Designating specific cells as parameters enables users to change values in those cells in a worksheet by using the edit boxes in the right pane. Excel Services then recalculates the worksheet based on the new values.
If you want to use certain functionalities in Excel or if you want to analyze a workbook by using all Excel functionalities, you can open a workbook in Excel by clicking Open in Excel. You can also open a workbook in Excel to print it and to work offline.
To open a workbook by using the Open in Excel command, you must have "open" rights. For more information, see the next section, Managing Workbooks, and User Permissions and Permission Levels on TechNet. Users who do not have “open” rights can still open a snapshot in Excel.
You can also analyze, pivot, and interact with data by using Excel Web Access.
For more information about Excel Services and business intelligence capability in SharePoint Server 2010, see the business intelligence documentation in SharePoint Server Help.
The workbook management and lockdown capabilities of Excel Services enable you to:
Maintain only one copy of a workbook, that is created and changed by a trusted author in a central, secure place, instead of maintaining multiple copies on each user's computer. The correct version of the worksheet is easier to find, share, and use from within Excel, SharePoint, and other applications.
Secure and protect workbook models and back-end data. You can give users view-only rights to limit access to the workbook. For example, you can prevent users from opening a workbook by using Excel or you can control what they are allowed to view in a workbook. Users can have browser-based access to the content in a workbook that the author wants to share, but no ability to open the workbook in the Excel client, view formulas, or view supporting content or other intellectual property that may be in the workbook.
Create snapshots of a workbook.
Excel Services is optimized for many users and many workbooks. It can also help load-balance calculation across the server farm.
Programmatic Access Through Custom .NET Applications
You can create custom applications—for example, ASP.NET applications—that:
Call Excel Web Services to access, parameterize, and calculate workbooks.
Open, refresh external data, set cells or ranges, recalculate, participate in collaborative editing sessions with other applications or people, save, and save as.
Use custom workflows to schedule calculation operations or send e-mail notifications. (This uses SharePoint capabilities and is not a native part of Excel Services.)
User-Defined Functions (UDFs)
You can also use Excel Services UDFs, which enable you to use formulas in a cell to call custom functions that are written in managed code and deployed to SharePoint Server 2010.
For more information about UDFs in Excel Services, see Understanding Excel Services UDFs.
You can use the REST API in Excel Services to access workbook parts or elements directly through a URL. The discovery mechanisms built into the Excel Services REST API enable developers and users to explore the content of the workbook manually or programmatically.
For more information about the REST API in Excel Services, see Excel Services REST API.