テーブルを表す要素。Table
に含めることができるのは Table
要素のみです。ドキュメント構造の詳細については、Google ドキュメントの拡張に関するガイドをご覧ください。
多数の行またはセルを含む Table
を作成する場合は、次の例に示すように、文字列配列から作成することを検討してください。
const body = DocumentApp.getActiveDocument().getActiveTab().asDocumentTab().getBody(); // Create a two-dimensional array containing the cell contents. const 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);
メソッド
詳細なドキュメント
append Table Row()
append Table Row(tableRow)
指定された Table
を追加します。
// Opens the Docs file by its ID. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById('123abc'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab('123abc').asDocumentTab().getBody(); // Gets the first table in the tab and copies the second row. const table = body.getTables()[0]; const row = table.getChild(1).copy(); // Adds the copied row to the bottom of the table. const tableRow = table.appendTableRow(row);
パラメータ
名前 | 型 | 説明 |
---|---|---|
table | Table | 追加するテーブル行。 |
戻る
Table
- 追加されたテーブル行要素。
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上による承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
clear()
copy()
edit As Text()
編集用に現在の要素の Text
バージョンを取得します。
要素の内容をリッチ テキストとして操作するには、edit
を使用します。edit
モードでは、テキスト以外の要素(Inline
や Horizontal
など)は無視されます。
削除されたテキスト範囲に完全に含まれる子要素は、要素から削除されます。
const body = DocumentApp.getActiveDocument().getActiveTab().asDocumentTab().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
- 現在の要素のテキスト バージョン
find Element(elementType)
要素の内容で、指定したタイプの子孫を検索します。
パラメータ
名前 | 型 | 説明 |
---|---|---|
element | Element | 検索する要素のタイプ。 |
戻る
Range
- 検索要素の位置を示す検索結果。
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上による承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
find Element(elementType, from)
指定された Range
から、指定されたタイプの子孫を要素の内容で検索します。
const body = DocumentApp.getActiveDocument().getActiveTab().asDocumentTab().getBody(); // Define the search parameters. let searchResult = null; // Search until the paragraph is found. while ( (searchResult = body.findElement( DocumentApp.ElementType.PARAGRAPH, searchResult, ))) { const par = searchResult.getElement().asParagraph(); if (par.getHeading() === DocumentApp.ParagraphHeading.HEADING1) { // Found one, update and stop. par.setText('This is the first header.'); break; } }
パラメータ
名前 | 型 | 説明 |
---|---|---|
element | Element | 検索する要素のタイプ。 |
from | Range | 検索結果から検索する検索結果。 |
戻る
Range
- 検索要素の次の位置を示す検索結果。
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上による承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
find Text(searchPattern)
正規表現を使用して、要素のコンテンツで指定されたテキスト パターンを検索します。
JavaScript 正規表現機能のサブセット(キャプチャ グループやモード修飾子など)は完全にはサポートされていません。
指定された正規表現パターンは、現在の要素に含まれる各テキスト ブロックと個別に照合されます。
パラメータ
名前 | 型 | 説明 |
---|---|---|
search | String | 検索するパターン |
戻る
Range
- 検索テキストの位置を示す検索結果。一致がない場合、null
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上による承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
find Text(searchPattern, from)
指定された検索結果から、要素のコンテンツで指定されたテキスト パターンを検索します。
JavaScript 正規表現機能のサブセット(キャプチャ グループやモード修飾子など)は完全にはサポートされていません。
指定された正規表現パターンは、現在の要素に含まれる各テキスト ブロックと個別に照合されます。
パラメータ
名前 | 型 | 説明 |
---|---|---|
search | String | 検索するパターン |
from | Range | 検索結果 |
戻る
Range
- 検索テキストの次の位置を示す検索結果。一致がない場合、null です。
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上による承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Attributes()
要素の属性を取得します。
結果は、有効な要素属性ごとにプロパティを含むオブジェクトです。各プロパティ名は、Document
列挙型の項目に対応しています。
const doc = DocumentApp.getActiveDocument(); const documentTab = doc.getActiveTab().asDocumentTab(); const body = documentTab.getBody(); // Append a styled paragraph. const par = body.appendParagraph('A bold, italicized paragraph.'); par.setBold(true); par.setItalic(true); // Retrieve the paragraph's attributes. const atts = par.getAttributes(); // Log the paragraph attributes. for (const att in atts) { Logger.log(`${att}:${atts[att]}`); }
戻る
Object
- 要素の属性。
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上による承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Border Color()
枠線の色を取得します。
// Opens the Docs file by its ID. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById('123abc'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab('123abc').asDocumentTab().getBody(); // Gets the first table. const table = body.getTables()[0]; // Sets the border color of the first table. table.setBorderColor('#00FF00'); // Logs the border color of the first table to the console. console.log(table.getBorderColor());
戻る
String
- CSS 記法('#ffffff'
など)でフォーマットされた枠線の色。
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上による承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Border Width()
枠線の太さをポイント単位で取得します。
// Opens the Docs file by its ID. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById('123abc'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab('123abc').asDocumentTab().getBody(); // Gets the first table. const table = body.getTables()[0]; // Sets the border width of the first table. table.setBorderWidth(20); // Logs the border width of the first table. console.log(table.getBorderWidth());
戻る
Number
- 枠線の幅(ポイント単位)。
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上による承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Cell(rowIndex, cellIndex)
指定された行とセルのインデックスの Table
を取得します。
// Opens the Docs file by its ID. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById('123abc'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab('123abc').asDocumentTab().getBody(); // Gets the first table. const table = body.getTables()[0]; // Gets the cell of the table's third row and second column. const cell = table.getCell(2, 1); // Logs the cell text to the console. console.log(cell.getText());
パラメータ
名前 | 型 | 説明 |
---|---|---|
row | Integer | 取得するセルを含む行のインデックス。 |
cell | Integer | 取得するセルのインデックス。 |
戻る
Table
- 表のセル。
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上による承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Child(childIndex)
指定された子インデックスの子要素を取得します。
const body = DocumentApp.getActiveDocument().getActiveTab().asDocumentTab().getBody(); // Obtain the first element in the tab. const 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.'); }
パラメータ
名前 | 型 | 説明 |
---|---|---|
child | Integer | 取得する子要素のインデックス。 |
戻る
Element
- 指定されたインデックスの子要素。
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上による承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Child Index(child)
get Column Width(columnIndex)
指定された表の列の幅(ポイント単位)を取得します。
// Opens the Docs file by its ID. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById('123abc'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab('123abc').asDocumentTab().getBody(); // Gets the first table. const table = body.getTables()[0]; // Sets the width of the second column to 100 points. const columnWidth = table.setColumnWidth(1, 100); // Gets the width of the second column and logs it to the console. console.log(columnWidth.getColumnWidth(1));
パラメータ
名前 | 型 | 説明 |
---|---|---|
column | Integer | 列番号。 |
戻る
Number
- 列の幅(ポイント単位)。
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上による承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Link Url()
リンクの URL を取得します。
戻る
String
- リンク URL。要素にこの属性の値が複数含まれている場合は null
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上による承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Next Sibling()
get Num Children()
子の数を取得します。
const body = DocumentApp.getActiveDocument().getActiveTab().asDocumentTab().getBody(); // Log the number of elements in the tab. Logger.log(`There are ${body.getNumChildren()} elements in the tab's body.`);
戻る
Integer
- 子の数。
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上による承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Num Rows()
Table
の数を取得します。
// Opens the Docs file by its ID. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById('123abc'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab('123abc').asDocumentTab().getBody(); // Gets the first table. const table = body.getTables()[0]; // Logs the number of rows of the first table to the console. console.log(table.getNumRows());
戻る
Integer
- テーブルの行数。
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上による承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Parent()
要素の親要素を取得します。
親要素には現在の要素が含まれています。
戻る
Container
- 親要素。
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上による承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Previous Sibling()
get Row(rowIndex)
指定された行番号の Table
を取得します。
// Opens the Docs file by its ID. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById('123abc'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab('123abc').asDocumentTab().getBody(); // Gets the first table and logs the text of first row to the console. const table = body.getTables()[0]; console.log(table.getRow(0).getText());
パラメータ
名前 | 型 | 説明 |
---|---|---|
row | Integer | 取得する行のインデックス。 |
戻る
Table
- 表の行。
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上による承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Text()
要素のコンテンツをテキスト文字列として取得します。
戻る
String
- 要素の内容(テキスト文字列)
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上による承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Text Alignment()
テキストの配置を取得します。使用できる配置のタイプは、Document
、Document
、Document
です。
戻る
Text
- テキストの配置のタイプ。テキストに複数のタイプのテキストの配置が含まれている場合、またはテキストの配置が設定されていない場合は null
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上による承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Type()
要素の Element
を取得します。
get
を使用して、特定の要素の正確な型を判断します。
const doc = DocumentApp.getActiveDocument(); const documentTab = doc.getActiveTab().asDocumentTab(); const body = documentTab.getBody(); // Obtain the first element in the active tab's body. const 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.'); }
戻る
Element
- 要素のタイプ。
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上による承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
insert Table Row(childIndex)
insert Table Row(childIndex, tableRow)
is At Document End()
remove Child(child)
指定された子要素を削除します。
// Opens the Docs file by its ID. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById('123abc'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab('123abc').asDocumentTab().getBody(); // Gets the first table. const table = body.getTables()[0]; // Finds the first table row and removes it. const element = table.findElement(DocumentApp.ElementType.TABLE_ROW); table.removeChild(element.getElement());
パラメータ
名前 | 型 | 説明 |
---|---|---|
child | Element | 削除する子要素。 |
戻る
Table
- 現在の要素。
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上による承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
remove From Parent()
要素を親から削除します。
const doc = DocumentApp.getActiveDocument(); const documentTab = doc.getActiveTab().asDocumentTab(); const body = documentTab.getBody(); // Remove all images in the active tab's body. const imgs = body.getImages(); for (let i = 0; i < imgs.length; i++) { imgs[i].removeFromParent(); }
戻る
Table
- 削除された要素。
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上による承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
remove Row(rowIndex)
指定した行番号の Table
を削除します。
// Opens the Docs file by its ID. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById('123abc'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab('123abc').asDocumentTab().getBody(); // Gets the first table and removes its second row. const table = body.getTables()[0]; table.removeRow(1);
パラメータ
名前 | 型 | 説明 |
---|---|---|
row | Integer | 削除する行のインデックス。 |
戻る
Table
- 削除された行。
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上による承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
replace Text(searchPattern, replacement)
正規表現を使用して、指定したテキスト パターンのすべての出現を指定された置換文字列に置き換えます。
検索パターンは、JavaScript 正規表現オブジェクトではなく、文字列として渡されます。そのため、パターン内のバックスラッシュをエスケープする必要があります。
このメソッドは Google の RE2 正規表現ライブラリを使用します。これにより、サポートされる構文が制限されます。
指定された正規表現パターンは、現在の要素に含まれる各テキスト ブロックに対して個別に照合されます。
const body = DocumentApp.getActiveDocument().getActiveTab().asDocumentTab().getBody(); // Clear the text surrounding "Apps Script", with or without text. body.replaceText('^.*Apps ?Script.*$', 'Apps Script');
パラメータ
名前 | 型 | 説明 |
---|---|---|
search | String | 検索する正規表現パターン |
replacement | String | 置換として使用するテキスト |
戻る
Element
- 現在の要素
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上による承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
set Attributes(attributes)
要素の属性を設定します。
指定された attributes パラメータは、各プロパティ名が Document
列挙型のアイテムで、各プロパティ値が適用される新しい値であるオブジェクトである必要があります。
const doc = DocumentApp.getActiveDocument(); const documentTab = doc.getActiveTab().asDocumentTab(); const body = documentTab.getBody(); // Define a custom paragraph style. const 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. const par = body.appendParagraph('A paragraph with custom style.'); // Apply the custom style. par.setAttributes(style);
パラメータ
名前 | 型 | 説明 |
---|---|---|
attributes | Object | 要素の属性。 |
戻る
Table
- 現在の要素。
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上による承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
set Border Color(color)
枠線の色を設定します。
// Opens the Docs file by its ID. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById('123abc'); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab('123abc').asDocumentTab().getBody(); // Gets the first table. const table = body.getTables()[0]; // Sets the border color of the table to green. table.setBorderColor('#00FF00');
パラメータ
名前 | 型 | 説明 |
---|---|---|
color | String | 枠線の色(CSS 記法で指定、'#ffffff' など)。 |
戻る
Table
- 現在の要素。
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上による承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
set Border Width(width)
set Column Width(columnIndex, width)
set Link Url(url)
set Text Alignment(textAlignment)
テキストの配置を設定します。使用できる配置のタイプは、Document
、Document
、Document
です。
// Make the entire first paragraph in the active tab be superscript. const documentTab = DocumentApp.getActiveDocument().getActiveTab().asDocumentTab(); const text = documentTab.getBody().getParagraphs()[0].editAsText(); text.setTextAlignment(DocumentApp.TextAlignment.SUPERSCRIPT);
パラメータ
名前 | 型 | 説明 |
---|---|---|
text | Text | 適用するテキストの配置の種類 |
戻る
Table
- 現在の要素
承認
このメソッドを使用するスクリプトには、次のスコープの 1 つ以上による承認が必要です。
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents