AI-generated Key Takeaways
- 
          The Selection object represents the current selection in an active presentation. 
- 
          You can get the currently active page, selected page elements, selected pages in the filmstrip, selected table cells, or selected text range using methods like getCurrentPage(),getPageElementRange(),getPageRange(),getTableCellRange(), andgetTextRange().
- 
          The type of the current selection can be determined using the getSelectionType()method.
The user's selection in the active presentation.
const selection = SlidesApp.getActivePresentation().getSelection(); const currentPage = selection.getCurrentPage(); const selectionType = selection.getSelectionType();
Methods
| Method | Return type | Brief description | 
|---|---|---|
| get | Page | Returns the currently active Pageornullif there is no active page. | 
| get | Page | Returns the Pagecollection ofPageinstances that are
selected ornullif there are noPageinstances selected. | 
| get | Page | Returns the Pagea collection ofPageinstances in the flimstrip that are
selected ornullif the selection is not of typeSelection. | 
| get | Selection | Returns the Selection. | 
| get | Table | Returns the Tablecollection ofTableinstances that are selected
ornullif there are noTableinstances selected. | 
| get | Text | Returns the Textthat is selected ornullif the selection is not of typeSelection. | 
Detailed documentation
getCurrentPage()  
Returns the currently active Page or null if there is no active page.
const selection = SlidesApp.getActivePresentation().getSelection(); const currentPage = selection.getCurrentPage(); if (currentPage != null) { Logger.log(`Selected current active page ID: ${currentPage.getObjectId()}`); }
Return
Authorization
Scripts that use this method require authorization with one or more of the following scopes:
- 
https://www.googleapis.com/auth/presentations.currentonly
- 
https://www.googleapis.com/auth/presentations
getPageElementRange()   
Returns the Page collection of Page instances that are
selected or null if there are no Page instances selected.
const selection = SlidesApp.getActivePresentation().getSelection(); const selectionType = selection.getSelectionType(); if (selectionType === SlidesApp.SelectionType.PAGE_ELEMENT) { const currentPage = selection.getCurrentPage(); const pageElements = selection.getPageElementRange().getPageElements(); Logger.log(`Number of page elements selected: ${pageElements.length}`); }
Return
Authorization
Scripts that use this method require authorization with one or more of the following scopes:
- 
https://www.googleapis.com/auth/presentations.currentonly
- 
https://www.googleapis.com/auth/presentations
getPageRange()  
Returns the Page a collection of Page instances in the flimstrip that are
selected or null if the selection is not of type Selection.
const selection = SlidesApp.getActivePresentation().getSelection(); const selectionType = selection.getSelectionType(); if (selectionType === SlidesApp.SelectionType.PAGE) { const pageRange = selection.getPageRange(); Logger.log( `Number of pages in the flimstrip selected: ${ pageRange.getPages().length}`, ); }
Return
Authorization
Scripts that use this method require authorization with one or more of the following scopes:
- 
https://www.googleapis.com/auth/presentations.currentonly
- 
https://www.googleapis.com/auth/presentations
getSelectionType()  
Returns the Selection.
const selection = SlidesApp.getActivePresentation().getSelection(); const selectionType = selection.getSelectionType(); if (selectionType === SlidesApp.SelectionType.CURRENT_PAGE) { const currentPage = selection.getCurrentPage(); Logger.log(`Selected current active page ID: ${currentPage.getObjectId()}`); }
Return
Authorization
Scripts that use this method require authorization with one or more of the following scopes:
- 
https://www.googleapis.com/auth/presentations.currentonly
- 
https://www.googleapis.com/auth/presentations
getTableCellRange()   
Returns the Table collection of Table instances that are selected
or null if there are no Table instances selected.
const selection = SlidesApp.getActivePresentation().getSelection(); const selectionType = selection.getSelectionType(); if (selectionType === SlidesApp.SelectionType.TABLE_CELL) { const currentPage = selection.getCurrentPage(); const tableCells = selection.getTableCellRange().getTableCells(); const table = tableCells[0].getParentTable(); Logger.log(`Number of table cells selected: ${tableCells.length}`); }
Return
Authorization
Scripts that use this method require authorization with one or more of the following scopes:
- 
https://www.googleapis.com/auth/presentations.currentonly
- 
https://www.googleapis.com/auth/presentations
getTextRange()  
Returns the Text that is selected or null if the selection is not of type
Selection.
The Text represents two scenarios:
1. Range of text selected. For example if a shape has text "Hello", and "He" is selected,
the returned range has Text = 0, and Text =
2.
2. Cursor position. For example if a shape has text "Hello", and cursor is after "H",
("H|ello"), the returned range has Text = 1 and Text = 1.
const selection = SlidesApp.getActivePresentation().getSelection(); const selectionType = selection.getSelectionType(); if (selectionType === SlidesApp.SelectionType.TEXT) { const currentPage = selection.getCurrentPage(); const pageElement = selection.getPageElementRange().getPageElements()[0]; const textRange = selection.getTextRange(); Logger.log(`Text selected: ${textRange.asString()}`); }
Return
Authorization
Scripts that use this method require authorization with one or more of the following scopes:
- 
https://www.googleapis.com/auth/presentations.currentonly
- 
https://www.googleapis.com/auth/presentations