前言:Excel Services 中的 REST API 是 Microsoft SharePoint Server 2010 的新增項。利用 REST API,可經過 URL 直接訪問工做簿部件或元素。網絡
1、REST 服務基於兩個要求:編碼
用於定位網絡資源的尋址方案atom
用於返回這些資源的表示形式的方法spa
2、REST URL基本URI的三個組成部分是:3d
REST aspx 頁 URI:http://<ServerName>/_vti_bin/ExcelRest.aspxorm
工做簿位置:/Docs/Documents/sampleWorkbook.xlsxblog
資源位置:/model/Ranges('nameOfTheNamedRange')資源
3、API簡單應用及示例:開發
一、單元格展現:文檔
例:http://URL/_vti_bin/ExcelRest.aspx/DocLib1/ExcelTest.xlsx/model/Ranges('A1')
附:完整的Excel
二、圖表展現
例:特別說明」 %E5%9B%BE%E8%A1%A8%201」==」圖表 1」的意思,通過Url編碼
http://URL/_vti_bin/ExcelRest.aspx/DocLib1/ExcelTest.xlsx/Model/Charts('%E5%9B%BE%E8%A1%A8%201')
附:原來的Excel截屏
三、單元格範圍展現(Excel如上圖,範圍選擇不會展現出圖表)
例:http://URL/_vti_bin/ExcelRest.aspx/DocLib1/ExcelTest.xlsx/Model/Ranges('A1|M5')
特:Sheet2!A1%7CM5,標下劃線部分,能夠選擇工做表,半角感嘆號分隔;
四、單元格範圍展現並設置一個單元格的值
例:(原Excel如上面Excel所示)http://URL/_vti_bin/ExcelRest.aspx/DocLib1/ExcelTest.xlsx/Model/Ranges('Sheet2!A1%7CN5')?Ranges('Sheet2!N2')=88&Ranges('Sheet2!N3')=98
4、返回atom的XML格式
經過返回的XML文件,咱們能夠在代碼中進行下一步的Coding,能夠基於一個發佈的Excel文件進行統計、展現等。
例:($format=atom參數)
http://URL/_vti_bin/ExcelRest.aspx/DocLib1/ExcelTest.xlsx/Model/Ranges('Sheet2!A1%7CN5')?Ranges('Sheet2!N2')=88&Ranges('Sheet2!N3')=98&$format=atom
右鍵查看源文件:
特:因爲完整的XML代碼所佔篇幅太多,因此只截取當前屏幕,敬請見諒!
5、Excel Services REST API 中不受支持的功能
如下是 Excel Services REST API 中當前不支持或未使用的多個重要功能的部分列表:
· 無浮動圖。若是一個範圍包含圖,而且您經過 REST 請求該範圍,則只會獲取該範圍。
· 無迷你圖,無圖標條件格式。當前不受支持。
· 無像素(理想 EWA)。REST 生成的 HTML 與 Excel Web Access 生成的 HTML 很類似。但 Excel Services REST API 沒法訪問 Excel Web Access 可訪問的全部級聯樣式表 (CSS) 元素。Excel Services REST API 返回一個 HTML 片斷。此 HTML 片斷必須是自包含的。
· 表中不存在差別。當以 Atom 的形式請求表以查看單元格或數據是列標題、總計仍是常規數據時,表中不會產生任何差別。也就是說,不存在指定單元格或數據是標題、總計仍是常規數據的差別。將平等對待表中的全部表單元格。
· URL 大小限制。URL 大小將限制在約 2000 個字符。這意味着,若是工做簿中有大量參數,則可能沒法設置全部參數。特別是在工做簿位於文件夾結構的較低位置時會出現此狀況。
· 特殊字符。不支持如「?」和「#」這樣的字符。若要正確引用包含特殊字符的工做表名稱,則向帶特殊字符的工做表引用公式時,基本原則是「瞭解 Excel 客戶端執行什麼操做」,並遵循相應示例。
結束語:
本文爲參考MSDN的sdk文檔,作的簡單示例,若有疑問請參考附後的參考文獻;對於Excel Services REST API瞭解了一下,推翻了之前認爲Excel Services只能Web展現的印象,其實還能夠基於這個功能,簡單開發一些新的應用。
參考文獻:
Excel Services REST API 概述
http://msdn.microsoft.com/zh-cn/library/ee556842(v=office.14).aspx
Excel Services REST API 的資源 URI
http://msdn.microsoft.com/zh-cn/library/ff394530(v=office.14).aspx