Class Table

コレクションでコンテンツを整理 必要に応じて、コンテンツの保存と分類を行います。
テーブル

テーブルを表す要素。Table に含めることができるのは TableRow 要素のみです。ドキュメント構造の詳細については、Google ドキュメントの拡張ガイドをご覧ください。

多数の行またはセルを含む Table を作成する場合は、次の例に示すように、文字列配列からビルドすることを検討してください。

var body = DocumentApp.getActiveDocument().getBody();

// Create a two-dimensional array containing the cell contents.
var cells = [
  ['Row 1, Cell 1', 'Row 1, Cell 2'],
  ['Row 2, Cell 1', 'Row 2, Cell 2']
];

// Build a table from the array.
body.appendTable(cells);

Methods

方法戻り値の型概要
appendTableRow()TableRow新しい TableRow を作成して追加します。
appendTableRow(tableRow)TableRow指定された TableRow を追加します。
clear()Table要素のコンテンツをクリアします。
copy()Table現在の要素から分離されたディープコピーを返します。
editAsText()Text編集用に現在の要素の Text バージョンを取得します。
findElement(elementType)RangeElement要素のコンテンツを指定して、指定された型の子孫を検索します。
findElement(elementType, from)RangeElement要素の内容を検索し、指定された RangeElement から始まる、指定されたタイプの子孫を検索します。
findText(searchPattern)RangeElement正規表現を使用して、要素の内容について、指定されたテキスト パターンを検索します。
findText(searchPattern, from)RangeElement特定のコンテンツ要素から、指定したテキスト パターンで要素のコンテンツを検索します。
getAttributes()Object要素の属性を取得します。
getBorderColor()String枠線の色を取得します。
getBorderWidth()Numberボーダーの幅をポイント数で取得します。
getCell(rowIndex, cellIndex)TableCell指定された行とセル インデックスにある TableCell を取得します。
getChild(childIndex)Element指定した子インデックスにある子要素を取得します。
getChildIndex(child)Integer指定した子要素の子インデックスを取得します。
getColumnWidth(columnIndex)Number指定した表の列の幅をポイント単位で取得します。
getLinkUrl()Stringリンクの URL を取得します。
getNextSibling()Element要素の次の兄弟要素を取得します。
getNumChildren()Integer子の数を取得します。
getNumRows()IntegerTableRows の数を取得します。
getParent()ContainerElement要素の親要素を取得します。
getPreviousSibling()Element要素の前の兄弟要素を取得します。
getRow(rowIndex)TableRow指定された行インデックスの TableRow を取得します。
getText()String要素のコンテンツをテキスト文字列として取得します。
getTextAlignment()TextAlignmentテキストの配置を取得します。
getType()ElementType要素の ElementType を取得します。
insertTableRow(childIndex)TableRow指定されたインデックスに新しい TableRow を作成して挿入します。
insertTableRow(childIndex, tableRow)TableRow指定された TableRow を指定されたインデックスに挿入します。
isAtDocumentEnd()Boolean要素が Document の末尾にあるかどうかを判断します。
removeChild(child)Table指定した子要素を削除します。
removeFromParent()Table親から要素を削除します。
removeRow(rowIndex)TableRow指定された行インデックスの TableRow を削除します。
replaceText(searchPattern, replacement)Element正規表現を使用して、特定のテキスト パターンをすべて特定の置換文字列に置き換えます。
setAttributes(attributes)Table要素の属性を設定します。
setBorderColor(color)Table枠線の色を設定します。
setBorderWidth(width)Table枠線の太さをポイントで設定します。
setColumnWidth(columnIndex, width)Table指定した列の幅をポイント単位で設定します。
setLinkUrl(url)Tableリンクの URL を設定します。
setTextAlignment(textAlignment)Tableテキストの配置を設定します。

詳細なドキュメント

appendTableRow()

新しい TableRow を作成して追加します。

戻る

TableRow - 新しい表の行要素。

認可

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

appendTableRow(tableRow)

指定された TableRow を追加します。

パラメータ

名前説明
tableRowTableRow追加するテーブル行

戻る

TableRow - 追加のテーブル行要素

認可

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

clear()

要素のコンテンツをクリアします。

戻る

Table - 現在の要素。


copy()

現在の要素から分離されたディープコピーを返します。

その要素内のすべての子要素もコピーされます。新しい要素には親がありません。

戻る

Table - 新しいコピー。

認可

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

editAsText()

編集用に現在の要素の Text バージョンを取得します。

editAsText を使用して、要素のコンテンツをリッチテキストとして操作します。editAsText モードでは、テキスト以外の要素(InlineImageHorizontalRule など)は無視されます。

削除されたテキスト範囲に完全に含まれる子要素は、その要素から削除されます。

var body = DocumentApp.getActiveDocument().getBody();

// Insert two paragraphs separated by a paragraph containing an
// horizontal rule.
body.insertParagraph(0, "An editAsText sample.");
body.insertHorizontalRule(0);
body.insertParagraph(0, "An example.");

// Delete " sample.\n\n An" removing the horizontal rule in the process.
body.editAsText().deleteText(14, 25);

戻る

Text - 現在の要素のテキスト バージョン。


findElement(elementType)

要素のコンテンツを指定して、指定された型の子孫を検索します。

パラメータ

名前説明
elementTypeElementType検索する要素のタイプ

戻る

RangeElement - 検索要素の位置を示す検索結果。

認可

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

findElement(elementType, from)

要素の内容を検索し、指定された RangeElement から始まる、指定されたタイプの子孫を検索します。

// Get the body section of the active document.
var body = DocumentApp.getActiveDocument().getBody();

// Define the search parameters.
var searchType = DocumentApp.ElementType.PARAGRAPH;
var searchHeading = DocumentApp.ParagraphHeading.HEADING1;
var searchResult = null;

// Search until the paragraph is found.
while (searchResult = body.findElement(searchType, searchResult)) {
  var par = searchResult.getElement().asParagraph();
  if (par.getHeading() == searchHeading) {
    // Found one, update and stop.
    par.setText('This is the first header.');
    return;
  }
}

パラメータ

名前説明
elementTypeElementType検索する要素のタイプ
fromRangeElement検索元の検索結果

戻る

RangeElement - 検索要素の次の位置を示す検索結果

認可

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

findText(searchPattern)

正規表現を使用して、要素の内容について、指定されたテキスト パターンを検索します。

キャプチャ グループやモード修飾子など、JavaScript の正規表現機能の一部はサポートされていません。

指定された正規表現パターンは、現在の要素に含まれるテキスト ブロックごとに独立して照合されます。

パラメータ

名前説明
searchPatternString検索するパターン

戻る

RangeElement - 検索テキストの位置を示す検索結果。一致がない場合は null を返します。

認可

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

findText(searchPattern, from)

特定のコンテンツ要素から、指定したテキスト パターンで要素のコンテンツを検索します。

キャプチャ グループやモード修飾子など、JavaScript の正規表現機能の一部はサポートされていません。

指定された正規表現パターンは、現在の要素に含まれるテキスト ブロックごとに独立して照合されます。

パラメータ

名前説明
searchPatternString検索するパターン
fromRangeElement検索元の検索結果

戻る

RangeElement - 検索テキストの次の位置を示す検索結果。一致がない場合は null を返します。

認可

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

getAttributes()

要素の属性を取得します。

結果は、各プロパティ名が DocumentApp.Attribute 列挙型のアイテムに対応する、有効な要素属性のプロパティを含むオブジェクトになります。

var body = DocumentApp.getActiveDocument().getBody();

// Append a styled paragraph.
var par = body.appendParagraph('A bold, italicized paragraph.');
par.setBold(true);
par.setItalic(true);

// Retrieve the paragraph's attributes.
var atts = par.getAttributes();

// Log the paragraph attributes.
for (var att in atts) {
  Logger.log(att + ":" + atts[att]);
}

戻る

Object - 要素の属性。

認可

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

getBorderColor()

枠線の色を取得します。

戻る

String - 枠線の色。CSS 表記('#ffffff' など)で指定します。

認可

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

getBorderWidth()

ボーダーの幅をポイント数で取得します。

戻る

Number - 枠線の幅(ポイント数)

認可

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

getCell(rowIndex, cellIndex)

指定された行とセル インデックスにある TableCell を取得します。

パラメータ

名前説明
rowIndexInteger取得するセルを含む行のインデックス
cellIndexInteger取得するセルのインデックス

戻る

TableCell - テーブルセル

認可

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

getChild(childIndex)

指定した子インデックスにある子要素を取得します。

// Get the body section of the active document.
var body = DocumentApp.getActiveDocument().getBody();

// Obtain the first element in the document.
var firstChild = body.getChild(0);

// If it's a paragraph, set its contents.
if (firstChild.getType() == DocumentApp.ElementType.PARAGRAPH) {
  firstChild.asParagraph().setText("This is the first paragraph.");
}

パラメータ

名前説明
childIndexInteger取得する子要素のインデックス

戻る

Element - 指定されたインデックスの子要素

認可

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

getChildIndex(child)

指定した子要素の子インデックスを取得します。

パラメータ

名前説明
childElementインデックスを取得する子要素

戻る

Integer - 子インデックス。

認可

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

getColumnWidth(columnIndex)

指定した表の列の幅をポイント単位で取得します。

パラメータ

名前説明
columnIndexInteger列インデックス

戻る

Number - 列の幅(ポイント数)

認可

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

getLinkUrl()

リンクの URL を取得します。

戻る

String - リンク URL。この属性に複数の値が含まれている場合は要素に null を指定します。

認可

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

getNextSibling()

要素の次の兄弟要素を取得します。

次の兄弟は同じ親を持ち、現在の要素をたどります。

戻る

Element - 次の兄弟要素。

認可

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

getNumChildren()

子の数を取得します。

// Get the body section of the active document.
var body = DocumentApp.getActiveDocument().getBody();

// Log the number of elements in the document.
Logger.log("There are " + body.getNumChildren() +
    " elements in the document body.");

戻る

Integer - 子の数

認可

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

getNumRows()

TableRows の数を取得します。

戻る

Integer - テーブル行の数

認可

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

getParent()

要素の親要素を取得します。

親要素には現在の要素が含まれます。

戻る

ContainerElement - 親要素。

認可

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

getPreviousSibling()

要素の前の兄弟要素を取得します。

前の兄弟は同じ親を持ち、現在の要素の前に配置されます。

戻る

Element - 前の兄弟要素。

認可

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

getRow(rowIndex)

指定された行インデックスの TableRow を取得します。

パラメータ

名前説明
rowIndexInteger取得する行のインデックス

戻る

TableRow - テーブル行

認可

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

getText()

要素のコンテンツをテキスト文字列として取得します。

戻る

String - テキストの内容としての要素の内容

認可

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

getTextAlignment()

テキストの配置を取得します。使用可能なアライメントの種類は、DocumentApp.TextAlignment.NORMALDocumentApp.TextAlignment.SUBSCRIPTDocumentApp.TextAlignment.SUPERSCRIPT です。

戻る

TextAlignment - テキスト配置のタイプ。テキストに複数のタイプのテキスト配置が含まれている場合、またはテキスト配置が一度も設定されていない場合は null

認可

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

getType()

要素の ElementType を取得します。

getType() を使用して、特定の要素の正確な型を特定します。

var body = DocumentApp.getActiveDocument().getBody();

// Obtain the first element in the document body.

var firstChild = body.getChild(0);

// Use getType() to determine the element's type.
if (firstChild.getType() == DocumentApp.ElementType.PARAGRAPH) {
  Logger.log('The first element is a paragraph.');
} else {
  Logger.log('The first element is not a paragraph.');
}

戻る

ElementType - 要素タイプ。

認可

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

insertTableRow(childIndex)

指定されたインデックスに新しい TableRow を作成して挿入します。

パラメータ

名前説明
childIndexInteger要素を挿入するインデックス

戻る

TableRow - 現在の要素。

認可

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

insertTableRow(childIndex, tableRow)

指定された TableRow を指定されたインデックスに挿入します。

パラメータ

名前説明
childIndexInteger要素を挿入するインデックス
tableRowTableRow挿入するテーブルの行

戻る

TableRow - 挿入されたテーブルの行要素

認可

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

isAtDocumentEnd()

要素が Document の末尾にあるかどうかを判断します。

戻る

Boolean - 要素がドキュメントの末尾にあるかどうかを示します。

認可

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

removeChild(child)

指定した子要素を削除します。

パラメータ

名前説明
childElement削除する子要素

戻る

Table - 現在の要素。

認可

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

removeFromParent()

親から要素を削除します。

var body = DocumentApp.getActiveDocument().getBody();

// Remove all images in the document body.
var imgs = body.getImages();
for (var i = 0; i < imgs.length; i++) {
  imgs[i].removeFromParent();
}

戻る

Table - 削除された要素。

認可

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

removeRow(rowIndex)

指定された行インデックスの TableRow を削除します。

パラメータ

名前説明
rowIndexInteger削除する行のインデックス

戻る

TableRow - 削除された行

認可

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

replaceText(searchPattern, replacement)

正規表現を使用して、特定のテキスト パターンをすべて特定の置換文字列に置き換えます。

検索パターンは、JavaScript の正規表現オブジェクトではなく、文字列として渡されます。そのため、パターン内のバックスラッシュはエスケープする必要があります。

このメソッドは、Google の RE2 正規表現ライブラリを使用して、サポートされている構文を制限します。

指定された正規表現パターンは、現在の要素に含まれるテキスト ブロックごとに独立して照合されます。

var body = DocumentApp.getActiveDocument().getBody();

// Clear the text surrounding "Apps Script", with or without text.
body.replaceText("^.*Apps ?Script.*$", "Apps Script");

パラメータ

名前説明
searchPatternString検索する正規表現パターン
replacementString置換として使用するテキスト

戻る

Element - 現在の要素。

認可

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

setAttributes(attributes)

要素の属性を設定します。

指定する属性パラメータは、各プロパティ名が DocumentApp.Attribute 列挙型の項目であり、各プロパティ値が適用する新しい値であるオブジェクトである必要があります。

var body = DocumentApp.getActiveDocument().getBody();

// Define a custom paragraph style.
var style = {};
style[DocumentApp.Attribute.HORIZONTAL_ALIGNMENT] =
    DocumentApp.HorizontalAlignment.RIGHT;
style[DocumentApp.Attribute.FONT_FAMILY] = 'Calibri';
style[DocumentApp.Attribute.FONT_SIZE] = 18;
style[DocumentApp.Attribute.BOLD] = true;

// Append a plain paragraph.
var par = body.appendParagraph('A paragraph with custom style.');

// Apply the custom style.
par.setAttributes(style);

パラメータ

名前説明
attributesObject要素の属性。

戻る

Table - 現在の要素。

認可

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

setBorderColor(color)

枠線の色を設定します。

パラメータ

名前説明
colorString枠線の色。CSS 表記('#ffffff' など)で指定します。

戻る

Table - 現在の要素。

認可

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

setBorderWidth(width)

枠線の太さをポイントで設定します。

パラメータ

名前説明
widthNumber枠線の幅(ポイント数)

戻る

Table - 現在の要素。

認可

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

setColumnWidth(columnIndex, width)

指定した列の幅をポイント単位で設定します。

パラメータ

名前説明
columnIndexInteger列インデックス
widthNumber枠線の幅(ポイント数)

戻る

Table - 現在の要素。

認可

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

setLinkUrl(url)

リンクの URL を設定します。

パラメータ

名前説明
urlStringリンクの URL

戻る

Table - 現在の要素。

認可

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

setTextAlignment(textAlignment)

テキストの配置を設定します。使用可能なアライメントのタイプは、DocumentApp.TextAlignment.NORMALDocumentApp.TextAlignment.SUBSCRIPTDocumentApp.TextAlignment.SUPERSCRIPT です。

// Make the entire first paragraph be superscript.
var text = DocumentApp.getActiveDocument().getBody().getParagraphs()[0].editAsText();
text.setTextAlignment(DocumentApp.TextAlignment.SUPERSCRIPT);

パラメータ

名前説明
textAlignmentTextAlignment適用するテキストの配置タイプ

戻る

Table - 現在の要素。

認可

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents