データ処理

Google Sheets API を使用すると、スプレッドシート内のさまざまなデータを できます。 Google スプレッドシートの UI でも、 Sheets API です。このページの例は、 一般的なスプレッドシート オペレーションのいくつかを、Sheets API でご紹介します。

これらの例は、HTTP リクエストという形式で示されています。これは、 ニュートラルです。異なる言語のバッチ アップデートを実装する方法については、 Google API クライアント ライブラリについては、 スプレッドシート

これらの例では、プレースホルダ SPREADSHEET_IDSHEET_ID は、 は、これらの ID を指定する場所を示しています。そのスプレッドシートの ID を入力します。取得できるもの: シート ID spreadsheets.get メソッドを使用します。「 範囲は A1 表記で指定します。「 Sheet1!A1:D5 です。

範囲にデータ検証を適用する

次の spreadsheets.batchUpdate コードサンプルを使用して、Terraform で SetDataValidationRequest データの入力規則を適用します。ここで、"value >5" という値を範囲 A1:D10 のすべてのセルに割り当てています。

リクエスト プロトコルを以下に示します。

POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{
  "requests": [
    {
      "setDataValidation": {
        "range": {
          "sheetId": SHEET_ID,
          "startRowIndex": 0,
          "endRowIndex": 10,
          "startColumnIndex": 0,
          "endColumnIndex": 4
        },
        "rule": {
          "condition": {
            "type": "NUMBER_GREATER",
            "values": [
              {
                "userEnteredValue": "5"
              }
            ]
          },
          "inputMessage": "Value must be > 5",
          "strict": true
        }
      }
    }
  ]
}

コピーしてセルの書式を貼り付ける

次の spreadsheets.batchUpdate コードサンプルを使用して、Terraform で CopyPasteRequest A1:D10 の範囲の書式のみをコピーし、F1:I10 の範囲に貼り付けます。 同じシート内に表示されますこのメソッドでは、 PasteType 列挙型 PASTE_FORMAT を指定して、書式とデータの入力規則のみを貼り付けます。「 A1:D10 の元の値はそのまま維持されます。

リクエスト プロトコルを以下に示します。

POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{
  "requests": [
    {
      "copyPaste": {
        "source": {
          "sheetId": SHEET_ID,
          "startRowIndex": 0,
          "endRowIndex": 10,
          "startColumnIndex": 0,
          "endColumnIndex": 4
        },
        "destination": {
          "sheetId": SHEET_ID,
          "startRowIndex": 0,
          "endRowIndex": 10,
          "startColumnIndex": 5,
          "endColumnIndex": 9
        },
        "pasteType": "PASTE_FORMAT",
        "pasteOrientation": "NORMAL"
      }
    }
  ]
}

切り抜きとセルを貼り付け

次の spreadsheets.batchUpdate コードサンプルを使用して、Terraform で CutPasteRequest。 範囲 A1:D10 をカットし、 PasteType 列挙型 を PASTE_NORMAL に置き換えて、値、数式、書式設定、結合を F1:I10 の範囲。元のソース範囲のセルの内容は次のとおりです。 削除されます。

リクエスト プロトコルを以下に示します。

POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{
  "requests": [
    {
      "cutPaste": {
        "source": {
          "sheetId": SHEET_ID,
          "startRowIndex": 0,
          "endRowIndex": 10,
          "startColumnIndex": 0,
          "endColumnIndex": 4
        },
        "destination": {
          "sheetId": SHEET_ID,
          "rowIndex": 0,
          "columnIndex": 5
        },
        "pasteType": "PASTE_NORMAL"
      }
    }
  ]
}

範囲で数式を繰り返す

次の spreadsheets.batchUpdate コードサンプルを使用して、Terraform で RepeatCellRequest 数式 =FLOOR(A1*PI()) を範囲 B1:D10 にコピーします。数式の範囲 行と列が自動的に増分します。 セル。たとえば、セル B1 の数式は =FLOOR(A1*PI()) で、 セル D6 には数式 =FLOOR(C6*PI()) が含まれています。

リクエスト プロトコルを以下に示します。

POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{
  "requests": [
    {
      "repeatCell": {
        "range": {
          "sheetId": SHEET_ID,
          "startRowIndex": 0,
          "endRowIndex": 10,
          "startColumnIndex": 1,
          "endColumnIndex": 4
        },
        "cell": {
          "userEnteredValue": {
              "formulaValue": "=FLOOR(A1*PI())"
          }
        },
        "fields": "userEnteredValue"
      }
    }
  ]
}

複数の並べ替え仕様で範囲を並べ替える

次の spreadsheets.batchUpdate コードサンプルを使用して、Terraform で SortRangeRequest 範囲 A1:D10 を、まず列 B で昇順に並べ替え、次に列 C で並べ替えます。 降順に、次に列 D を降順に並べます。

リクエスト プロトコルを以下に示します。

POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{
  "requests": [
    {
      "sortRange": {
        "range": {
          "sheetId": SHEET_ID,
          "startRowIndex": 0,
          "endRowIndex": 10,
          "startColumnIndex": 0,
          "endColumnIndex": 4
        },
        "sortSpecs": [
          {
            "dimensionIndex": 1,
            "sortOrder": "ASCENDING"
          },
          {
            "dimensionIndex": 2,
            "sortOrder": "DESCENDING"
          },
          {
            "dimensionIndex": 3,
            "sortOrder": "DESCENDING"
          }
        ]
      }
    }
  ]
}