您可以使用 Google Sheets API 建立、清除、複製及刪除工作表,也可以控管工作表的屬性。本頁面的範例說明如何透過 Google Sheets API 執行一些常見的 Google 試算表作業。
這些範例會以 HTTP 要求的形式呈現,不限於特定語言。如要瞭解如何使用 Google API 用戶端程式庫,以不同語言實作批次更新,請參閱「更新試算表」。
在這些範例中,預留位置 SPREADSHEET_ID
和 SHEET_ID
表示您提供這些 ID 的位置。您可以在試算表網址中找到試算表 ID。您可以使用 spreadsheets.get
方法取得工作表 ID。範圍是使用 A1 標記法指定的。例如:Sheet1!A1:D5。
新增工作表
下列
spreadsheets.batchUpdate
程式碼範例說明如何使用
AddSheetRequest
在試算表中新增工作表,同時設定標題、格線大小和分頁顏色。
回應包含 AddSheetResponse
,其中含有建立的試算表屬性物件 (例如 SHEET_ID
)。
要求通訊協定如下所示。
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID
:batchUpdate
{ "requests": [ { "addSheet": { "properties": { "title": "Deposits", "gridProperties": { "rowCount": 20, "columnCount": 12 }, "tabColor": { "red": 1.0, "green": 0.3, "blue": 0.4 } } } } ] }
清除工作表中的所有值,但保留格式
下列 spreadsheets.batchUpdate
程式碼範例說明如何使用 UpdateCellsRequest
從試算表中移除所有值,同時保留格式。
如果指定 userEnteredValue
欄位,但沒有對應的值,系統會解讀為清除範圍內值的指令。這項設定也可用於其他欄位。舉例來說,將 fields
值變更為 userEnteredFormat
會移除試算表支援的所有格式,但儲存格值不會變更。
要求通訊協定如下所示。
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID
:batchUpdate
{
"requests": [
{
"updateCells": {
"range": {
"sheetId": SHEET_ID
},
"fields": "userEnteredValue"
}
}
]
}
將工作表從一份試算表複製到另一份
下列spreadsheet.sheets.copyTo
程式碼範例說明如何將一個試算表中的單一工作表 (由 SHEET_ID
指定) 複製到另一個試算表。
要求主體中的 TARGET_SPREADSHEET_ID
變數會指定目的地試算表。副本會保留原始檔案的所有值、格式、公式和其他屬性。複製的試算表標題會設為「『[原始試算表標題]』的副本」。
回應包含 SheetProperties
物件,說明所建立試算表的屬性。
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID
/sheets/SHEET_ID
:copyTo
{
"destinationSpreadsheetId": "TARGET_SPREADSHEET_ID
"
}
刪除工作表
下列spreadsheets.batchUpdate
程式碼範例說明如何使用 DeleteSheetRequest
刪除 SHEET_ID
指定的工作表。
要求通訊協定如下所示。
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID
:batchUpdate
{
"requests": [
{
"deleteSheet": {
"sheetId": SHEET_ID
}
}
]
}
讀取試算表資料
下列 spreadsheets.get
程式碼範例說明如何從 spreadsheet 取得 sheet 屬性資訊,並由 SHEET_ID
和 SPREADSHEET_ID
指定。這個方法通常用於判斷特定試算表中的工作表的中繼資料,以便其他作業能以這些工作表為目標。fields
查詢參數只會指定應傳回工作表屬性資料 (而非儲存格值資料或與整個試算表相關的資料)。
GET https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID
?&fields=sheets.properties
回應包含 Spreadsheet
資源,其中含有 Sheet
物件和 SheetProperties
元素。如果指定的回應欄位設為預設值,系統會從回應中省略該欄位。
{
"sheets": [
{
"properties": {
"sheetId": SHEET_ID
,
"title": "Sheet1",
"index": 0,
"sheetType": "GRID",
"gridProperties": {
"rowCount": 100,
"columnCount": 20,
"frozenRowCount": 1
}
"tabColor": {
"blue": 1.0
}
},
...
],
}