テーブル オペレーション

GoogleSlide API を使用すると、ページ上の表を作成、編集できます。このページの例では、presentations.batchUpdate メソッドを使用した一般的なテーブル オペレーションをいくつか示しています。

これらの例では、次の変数を使用します。

  • PRESENTATION_ID - プレゼンテーション ID を指定する場所を示します。この ID の値はプレゼンテーションの URL から確認できます。
  • PAGE_ID - ページ オブジェクト ID を指定する場所を示します。この値は、URL から、または API 読み取りリクエストを使用して取得できます。
  • TABLE_ID - 作業中のテーブルのページ要素オブジェクト ID を指定する場所を示します。作成する要素にこの ID を指定するか(いくつかの制限があります)、Slides API で自動的に ID を作成することもできます。要素 ID は、API 読み取りリクエストで取得できます。

これらの例は、言語に依存しない HTTP リクエストとして表示されます。Google API クライアント ライブラリを使用してさまざまな言語でバッチ アップデートを実装する方法については、シェイプとテキストを追加するをご覧ください。

テーブルを作成する

次の presentations.batchUpdate コードサンプルは、CreateTableRequest メソッドを使用して、PAGE_ID で指定されたスライドにテーブルを追加する方法を示しています。

この表には 8 行 5 列があります。なお、Slides API では、elementProperties の一部として指定された size または transform フィールドは無視されます。代わりに、API は、指定された行数と列数(可能な場合)に対応できるサイズで、スライドのほぼ中央に配置されたテーブルを作成します。

テーブルを作成するためのリクエスト プロトコルは次のとおりです。

POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
  "requests": [
    {
      "createTable": {
        "objectId": TABLE_ID,
        "elementProperties": {
          "pageObjectId": PAGE_ID,
        },
        "rows": 8,
        "columns": 5
      }
    }
  ]
}

表の行または列を削除

次の presentations.batchUpdate コードサンプルは、DeleteTableRowRequest メソッドを使用して 6 番目の行を削除する方法を示しています。次に、DeleteTableColumnRequest メソッドを使用して 4 番目の列を削除します。テーブルは TABLE_ID で指定されます。cellLocation 内の rowIndexcolumnIndex はどちらもゼロベースです。

テーブルの行または列を削除するリクエスト プロトコルは次のとおりです。

POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
  "requests": [
    {
      "deleteTableRow": {
        "tableObjectId": TABLE_ID,
        "cellLocation": {
          "rowIndex": 5
        }
      }
    },
    {
      "deleteTableColumn": {
        "tableObjectId": TABLE_ID,
        "cellLocation": {
          "columnIndex": 3
        }
      }
    }
  ]
}

テーブルのデータを編集

次の presentations.batchUpdate コードサンプルは、DeleteTextRequest メソッドを使用して textRange 内のセル内のすべてのテキストを削除する方法を示しています。次に、InsertTextRequest メソッドを使用して「Kangaroo」という新しいテキストに置き換えます。

テーブルは TABLE_ID で指定されます。影響を受けるセルは 5 行目と 3 列目にあります。cellLocation 内の rowIndexcolumnIndex はどちらもゼロベースです。

テーブルデータを編集するためのリクエスト プロトコルは次のとおりです。

POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
  "requests": [
    {
      "deleteText": {
        "objectId": TABLE_ID,
        "cellLocation": {
          "rowIndex": 4,
          "columnIndex": 2
        },
        "textRange": {
          "type": "ALL",
        }
      }
    },
    {
      "insertText": {
        "objectId": TABLE_ID,
        "cellLocation": {
          "rowIndex": 4,
          "columnIndex": 2
        },
        "text": "Kangaroo",
        "insertionIndex": 0
      }
    }
  ]
}

表の見出し行の書式を設定

次の presentations.batchUpdate コードサンプルは、UpdateTableCellPropertiesRequest メソッドを使用して、TABLE_ID で指定された tableRange 内のテーブル要素のヘッダー行をフォーマットする方法を示しています。次に、TableCellProperties メソッドを使用して、ヘッダー行の背景色を黒に設定します。

以下の各リクエストでは、UpdateTextStyleRequest メソッドを使用して、ヘッダー行の 1 つのセルのテキスト形式を textRange 内の太字、白色 18 pt のカンブリア フォントに設定します。次に、ヘッダー内の追加のセルごとにこのリクエストを繰り返す必要があります。

locationcellLocation 内の rowIndexcolumnIndex はどちらもゼロベースです。

テーブルのヘッダー行をフォーマットするためのリクエスト プロトコルは次のとおりです。

POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
  "requests": [
    {
      "updateTableCellProperties": {
        "objectId": TABLE_ID,
        "tableRange": {
          "location": {
            "rowIndex": 0,
            "columnIndex": 0
          },
          "rowSpan": 1,
          "columnSpan": 3
        },
        "tableCellProperties": {
          "tableCellBackgroundFill": {
            "solidFill": {
              "color": {
                "rgbColor": {
                  "red": 0.0,
                  "green": 0.0,
                  "blue": 0.0
                }
              }
            }
          }
        },
        "fields": "tableCellBackgroundFill.solidFill.color"
      }
    },
    {
      "updateTextStyle": {
        "objectId": TABLE_ID,
        "cellLocation": {
          "rowIndex": 0,
          "columnIndex": 0
        },
        "style": {
          "foregroundColor": {
            "opaqueColor": {
              "rgbColor": {
                "red": 1.0,
                "green": 1.0,
                "blue": 1.0
              }
            }
          },
          "bold": true,
          "fontFamily": "Cambria",
          "fontSize": {
            "magnitude": 18,
            "unit": "PT"
          }
        },
        "textRange": {
          "type": "ALL"
        },
        "fields": "foregroundColor,bold,fontFamily,fontSize"
      }
    },
    // Repeat the above request for each additional cell in the header row....
  ]
}

これらの更新後、書式設定されたヘッダー行は次のようになります。

ヘッダー行レシピの結果の書式を設定します。

表の行または列を挿入

次の presentations.batchUpdate コードサンプルは、InsertTableRowsRequest メソッドを使用して 6 番目の行の下に 3 行を追加する方法を示しています。次に、InsertTableColumnsRequest メソッドを使用して、同じテーブルの 4 列目の左側に 2 つの列を追加します。

テーブルは TABLE_ID で指定されます。cellLocation 内の rowIndexcolumnIndex はどちらもゼロベースです。

テーブルの行または列を挿入するリクエスト プロトコルは次のとおりです。

POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
  "requests": [
    {
      "insertTableRows": {
        "tableObjectId": TABLE_ID,
        "cellLocation": {
          "rowIndex": 5
        },
        "insertBelow": true,
        "number": 3
      }
    },
    {
      "insertTableColumns": {
        "tableObjectId": TABLE_ID,
        "cellLocation": {
          "columnIndex": 3
        },
        "insertRight": false,
        "number": 2
      }
    }
  ]
}