
一、Sheet API 準備動作
以下流程請參考這篇「取得 Google API Key(金鑰) 流程」進行操作: 1. 啟用 Sheet API- 按照該篇文章完成「一、建立專案」
- 進行「二、啟用 Google API 服務」時,可輸入
Sheet API ,找到後「啟用」
- 接著依照「三、取得 API Key」的流程,建立一組「API 金鑰」,請記住這組字串,之後會用到。
- 如果這組「API 金鑰」在前端使用的話,會被使用者看到,那麼建議按「限制金鑰」進行其他設定/li>
- 同上,為了避免金鑰被別人拿去用,建議「應用程式限制」設定為自己網址,「API 限制」設定為「Sheet API」才能使用
二、Sheet API 讀取資料
1. 官網文件讀取試算表資料的操作語法說明請見「spreadsheets.values.get」:GET https://sheets.googleapis.com/v4/spreadsheets/[試算表 ID]/values/[工作表名稱及範圍]
官方也提供了「Sheet API 測試工具」,進入後切換到「HTTP」可看到以下語法: GET https://sheets.googleapis.com/v4/spreadsheets/[試算表 ID]/values/[工作表名稱及範圍]?key=[API 金鑰]
自行輸入以上參數就可看到取回的資料,JSON 格式大致長得像這樣: { "range": "sheet1!A1:Z4850", "majorDimension": "ROWS", "values": [ [ "時間", "稱謂", "性別", "註解" ], [ "2016/11/29 0:00:00", "Wayne", "male", "測試寫入功能" ], [ "2016/11/29 0:00:00", "Mary", "female", "成功!" ] ] }
2. 參數說明這裡說明前述的參數如何填寫: - 試算表 ID:試算表網址字串中
~/d/xxxxxxxxxxxx/edit~ xxxx 這一長串就是試算表 ID - 工作表名稱及範圍:這部分的詳細說明可參考官網文件「」→「Cell」→「A1 notation」或「R1C1 notation」,最簡單就是填入工作表名稱就好,例如「工作表1」,代表選擇全部範圍
- API 金鑰:填入前面「一、Sheet API 準備動作」取得的金鑰字串
三、操作範例
本篇同樣以這個試算表當做範例說明:- https://docs.google.com/spreadsheets/d/106tP9D89pnEgvZTuM3_ahMJRPjCSD3qthth-GEhGMIE/edit?usp=sharing
<div id="wfu_sheet_json"></div> <script src='//ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js'></script> <script> var spreadsheet_id = "106tP9D89pnEgvZTuM3_ahMJRPjCSD3qthth-GEhGMIE", // 填入試算表 ID tab_name = "sheet1", // 填入工作表名稱 api_key = "xxxxxxxxxx", // 填入 API 金鑰 url = "https://sheets.googleapis.com/v4/spreadsheets/" + spreadsheet_id + "/values/" + tab_name + "?callback=?&key=" + api_key; $.getJSON(url, function(json) { var values = json.values, // 所有試算表資料 html = ""; html += "<table>"; values.forEach(function(rows) { html += "<tr>"; rows.forEach(function(item) { html += "<td>" + item + "</td>"; }); html += "</tr>"; }); html += "</table>"; $("#wfu_sheet_json").html(html); }); </script>
以下是程式碼的執行效果範例,只取前 5 筆顯示: 時間 | 稱謂 | 性別 | 註解 |
2016/11/29 0:00:00 | Wayne | male | 測試寫入功能 |
2016/11/29 0:00:00 | Mary | female | 成功! |
2017/01/12 16:06:13 | |||
2017/01/13 0:01:00 | test | fe | jj |
用 Google Apps Script 操作試算表系列文章:
更多「Google 試算表」相關文章: