테이블을 나타내는 요소입니다. 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
: 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
: 테두리 너비(단위: 포인트)입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.
-
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
: 열 너비(포인트)입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
get Link Url()
링크 URL을 가져옵니다.
리턴
String
: 링크 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
: 삭제된 요소입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.
-
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)
요소의 속성을 설정합니다.
지정된 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