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
コードサンプルは、AutoResizeDimensionsRequest
を使用して、列のコンテンツのサイズに基づいて列 A:C のサイズを変更する方法を示しています。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
を使用して特定のインデックスに列または行を挿入する方法を示しています(シートの上部に空の行を追加する場合など)。最初のリクエストは、空の 2 列を列 C に挿入します。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 } }, ], }