표를 나타내는 요소입니다. Table는 Table 요소만 포함할 수 있습니다. 문서 구조에 대한 자세한 내용은 Google Docs 확장 가이드를 참고하세요.
행이나 셀이 많은 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 - 추가된 테이블 행 요소입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.
-
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 - 검색 요소의 위치를 나타내는 검색 결과입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.
-
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 - 검색 요소의 다음 위치를 나타내는 검색 결과입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
find Text(searchPattern)
정규 표현식을 사용하여 요소의 콘텐츠에서 지정된 텍스트 패턴을 검색합니다.
캡처 그룹, 모드 수정자 등 JavaScript 정규 표현식 기능의 일부는 완전히 지원되지 않습니다.
제공된 정규 표현식 패턴은 현재 요소에 포함된 각 텍스트 블록에 대해 독립적으로 일치합니다.
매개변수
| 이름 | 유형 | 설명 |
|---|---|---|
search | String | 검색할 패턴 |
리턴
Range - 검색 텍스트의 위치를 나타내는 검색 결과 또는 일치하는 항목이 없는 경우 null
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
find Text(searchPattern, from)
지정된 검색 결과부터 시작하여 요소의 콘텐츠에서 지정된 텍스트 패턴을 검색합니다.
캡처 그룹, 모드 수정자 등 JavaScript 정규 표현식 기능의 일부는 완전히 지원되지 않습니다.
제공된 정규 표현식 패턴은 현재 요소에 포함된 각 텍스트 블록에 대해 독립적으로 일치합니다.
매개변수
| 이름 | 유형 | 설명 |
|---|---|---|
search | String | 검색할 패턴 |
from | Range | 검색할 검색 결과 |
리턴
Range - 검색 텍스트의 다음 위치를 나타내는 검색 결과입니다. 일치하는 항목이 없으면 null입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.
-
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 - 요소의 속성입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.
-
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|null - 테두리 색상으로, CSS 표기법 (예: '#ffffff')으로 형식이 지정됩니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.
-
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|null - 테두리 너비(포인트)입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.
-
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 - 표 셀입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.
-
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 - 지정된 색인의 하위 요소입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.
-
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|null - 열 너비(포인트)입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
get Link Url()
링크 URL을 가져옵니다.
리턴
String|null - 링크 URL입니다. 요소에 이 속성의 값이 여러 개 포함된 경우 null입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.
-
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 - 자녀 수입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.
-
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 - 테이블 행 수입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
get Parent()
요소의 상위 요소를 가져옵니다.
상위 요소에 현재 요소가 포함되어 있습니다.
리턴
Container - 상위 요소입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.
-
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 - 표 행입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
get Text()
요소의 콘텐츠를 텍스트 문자열로 가져옵니다.
리턴
String - 요소의 콘텐츠(텍스트 문자열)
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
get Text Alignment()
텍스트 정렬을 가져옵니다. 사용 가능한 정렬 유형은 Document, Document, Document입니다.
리턴
Text - 텍스트 정렬 유형 또는 텍스트에 여러 유형의 텍스트 정렬이 포함되어 있거나 텍스트 정렬이 설정된 적이 없는 경우 null
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.
-
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: 요소 유형입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.
-
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 - 현재 요소
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.
-
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|null - 삭제된 요소입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.
-
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 - 삭제된 행입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.
-
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 - 현재 요소
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
set 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 - 현재 요소
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.
-
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 - 현재 요소
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.
-
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 - 현재 요소
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents