Google Sheets API を使用すると、シートの行と列の追加、削除、操作を行うことができます。このページの例では、Sheets API を使用して一般的な行と列の操作を行う方法を示します。
これらの例は、言語に依存しない HTTP リクエストの形式で示されています。Google API クライアント ライブラリを使用してさまざまな言語でバッチ更新を実装する方法については、スプレッドシートを更新するをご覧ください。
以下の例では、SPREADSHEET_ID
と SHEET_ID
というプレースホルダを使用して、これらの ID をどこで指定するかを示しています。スプレッドシート ID はスプレッドシートの URL で確認できます。シート ID は、spreadsheets.get
メソッドを使用して取得できます。範囲は A1 形式で指定します。範囲の例: Sheet1!A1:D5。
列の幅または行の高さを調整する
次の spreadsheets.batchUpdate
コードサンプルは、UpdateDimensionPropertiesRequest
を使用して列 A の幅プロパティを 160 ピクセルに更新する方法を示しています。2 番目のリクエストは、最初の 3 行の行の高さのプロパティを 40 ピクセルに更新します。dimension
フィールドは、オペレーションがシートの列または行に適用されるかどうかを決定します。
リクエスト プロトコルを以下に示します。
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID
:batchUpdate
{ "requests": [ { "updateDimensionProperties": { "range": { "sheetId":SHEET_ID
, "dimension": "COLUMNS", "startIndex": 0, "endIndex": 1 }, "properties": { "pixelSize": 160 }, "fields": "pixelSize" } }, { "updateDimensionProperties": { "range": { "sheetId":SHEET_ID
, "dimension": "ROWS", "startIndex": 0, "endIndex": 3 }, "properties": { "pixelSize": 40 }, "fields": "pixelSize" } } ] }
空の行または列を追加する
次の spreadsheets.batchUpdate
コードサンプルは、AppendDimensionRequest
を使用して行と列を追加する方法を示しています。最初のリクエストでは、シートの末尾に 3 つの空の行が追加されます。2 番目のリクエストでは、1 つの空の列が追加されます。dimension
フィールドは、オペレーションがシートの列または行に適用されるかどうかを決定します。
リクエスト プロトコルを以下に示します。
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID
:batchUpdate
{ "requests": [ { "appendDimension": { "sheetId":SHEET_ID
, "dimension": "ROWS", "length": 3 } }, { "appendDimension": { "sheetId":SHEET_ID
, "dimension": "COLUMNS", "length": 1 } } ] }
列のサイズを自動的に変更する
次の spreadsheets.batchUpdate
コードサンプルは、列の内容のサイズに基づいて列 A:C のサイズを変更するために AutoResizeDimensionsRequest
を使用する方法を示しています。dimension
フィールドは、オペレーションがシートの列に適用されることを示します。
リクエスト プロトコルを以下に示します。
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID
:batchUpdate
{
"requests": [
{
"autoResizeDimensions": {
"dimensions": {
"sheetId": SHEET_ID
,
"dimension": "COLUMNS",
"startIndex": 0,
"endIndex": 3
}
}
}
]
}
行のサイズを自動的に変更する
次の spreadsheets.batchUpdate
コードサンプルは、AutoResizeDimensionsRequest
を使用して最初の 3 行の行の高さをクリアする方法を示しています。行の高さは、各行のセルの内容に基づいて動的に調整されます。dimension
フィールドは、オペレーションがシートの行に適用されることを示します。
リクエスト プロトコルを以下に示します。
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID
:batchUpdate
{
"requests": [
{
"autoResizeDimensions": {
"dimensions": {
"sheetId": SHEET_ID
,
"dimension": "ROWS",
"startIndex": 0,
"endIndex": 3
}
}
}
]
}
行や列を削除する
次の spreadsheets.batchUpdate
コードサンプルは、DeleteDimensionRequest
を使用してシートの最初の 3 行を削除する方法を示しています。2 つ目のリクエストは、B:D 列を削除します。dimension
フィールドは、オペレーションがシートの列または行に適用されるかどうかを決定します。
リクエスト プロトコルを以下に示します。
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID
:batchUpdate
{ "requests": [ { "deleteDimension": { "range": { "sheetId":SHEET_ID
, "dimension": "ROWS", "startIndex": 0, "endIndex": 3 } } }, { "deleteDimension": { "range": { "sheetId":SHEET_ID
, "dimension": "COLUMNS", "startIndex": 1, "endIndex": 4 } } }, ], }
空の行または列を挿入する
次の spreadsheets.batchUpdate
コードサンプルは、InsertDimensionRequest
を使用して特定のインデックスに列または行を挿入する方法を示しています(シートの先頭に空の行を追加するなど)。最初のリクエストでは、列 C に 2 つの空の列が挿入されます。2 回目のリクエストでは、1 行目から始まる 3 つの空の行が挿入されます。
dimension
フィールドは、オペレーションがシートの列または行に適用されるかどうかを決定します。
true の場合、inheritFromBefore
フィールドは、新しい列または行に前の行または列と同じプロパティを付与するように Sheets API に指示します。false の場合、新しい列または行の後のディメンションから継承するように指示します。行 1 に行を挿入する場合、または列 A に列を挿入する場合、inheritFromBefore
は true にできません。
リクエスト プロトコルを以下に示します。
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID
:batchUpdate
{ "requests": [ { "insertDimension": { "range": { "sheetId":SHEET_ID
, "dimension": "COLUMNS", "startIndex": 2, "endIndex": 4 }, "inheritFromBefore": true } }, { "insertDimension": { "range": { "sheetId":SHEET_ID
, "dimension": "ROWS", "startIndex": 0, "endIndex": 3 }, "inheritFromBefore": false } }, ], }
行または列を移動する
次の spreadsheets.batchUpdate
コードサンプルは、MoveDimensionRequest
を使用して列 A を列 D の位置に移動する方法を示しています。2 番目のリクエストでは、5 ~ 10 行目が 20 行目の位置に移動します。
dimension
フィールドは、オペレーションがシートの列または行に適用されるかどうかを決定します。destinationIndex
フィールドは、ゼロベースの開始インデックスを使用して、ソースデータの移動先を決定します。
リクエスト プロトコルを以下に示します。
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID
:batchUpdate
{ "requests": [ { "moveDimension": { "source": { "sheetId":SHEET_ID
, "dimension": "COLUMNS", "startIndex": 0, "endIndex": 1 }, "destinationIndex": 3 } }, { "moveDimension": { "source": { "sheetId":SHEET_ID
, "dimension": "ROWS", "startIndex": 4, "endIndex": 10 }, "destinationIndex": 19 } }, ], }