Class Selection

選択

アクティブなプレゼンテーションでのユーザーの選択。

var selection = SlidesApp.getActivePresentation().getSelection();
var currentPage = selection.getCurrentPage();
var selectionType = selection.getSelectionType();
}

Methods

メソッド戻り値の型概要
getCurrentPage()Pageアクティブなページがない場合は、現在アクティブな Page または null を返します。
getPageElementRange()PageElementRange選択された PageElement インスタンスの PageElementRange コレクションを返します。PageElement インスタンスが選択されていない場合は null を返します。
getPageRange()PageRange選択されたフリムストリップ内の Page インスタンスのコレクションを PageRange として返します。選択が SelectionType.PAGE 型でない場合は null を返します。
getSelectionType()SelectionTypeSelectionType を返します。
getTableCellRange()TableCellRange選択された TableCell インスタンスの TableCellRange コレクションを返します。TableCell インスタンスが選択されていない場合は null を返します。
getTextRange()TextRange選択された TextRange を返します。選択内容が SelectionType.TEXT 型でない場合は null を返します。

詳細なドキュメント

getCurrentPage()

アクティブなページがない場合は、現在アクティブな Page または null を返します。

var selection = SlidesApp.getActivePresentation().getSelection();
var currentPage = selection.getCurrentPage();
if (currentPage != null) {
  Logger.log('Selected current active page ID: ' + currentPage.getObjectId());
}

リターン

Page

承認

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

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

getPageElementRange()

選択された PageElement インスタンスの PageElementRange コレクションを返します。PageElement インスタンスが選択されていない場合は null を返します。

var selection = SlidesApp.getActivePresentation().getSelection();
var selectionType = selection.getSelectionType();
if (selectionType == SlidesApp.SelectionType.PAGE_ELEMENT) {
  var currentPage = selection.getCurrentPage();
  var pageElements = selection.getPageElementRange().getPageElements();
  Logger.log('Number of page elements selected: ' + pageElements.length);
}

リターン

PageElementRange

承認

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

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

getPageRange()

選択されたフリムストリップ内の Page インスタンスのコレクションを PageRange として返します。選択が SelectionType.PAGE 型でない場合は null を返します。

var selection = SlidesApp.getActivePresentation().getSelection();
var selectionType = selection.getSelectionType();
if (selectionType == SlidesApp.SelectionType.PAGE) {
  var pageRange = selection.getPageRange();
  Logger.log('Number of pages in the flimstrip selected: ' + pageRange.getPages().length);
}
}

リターン

PageRange

承認

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

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

getSelectionType()

SelectionType を返します。

var selection = SlidesApp.getActivePresentation().getSelection();
var selectionType = selection.getSelectionType();
if (selectionType == SlidesApp.SelectionType.CURRENT_PAGE) {
  var currentPage = selection.getCurrentPage();
  Logger.log('Selected current active page ID: ' + currentPage.getObjectId());
}

リターン

SelectionType

承認

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

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

getTableCellRange()

選択された TableCell インスタンスの TableCellRange コレクションを返します。TableCell インスタンスが選択されていない場合は null を返します。

var selection = SlidesApp.getActivePresentation().getSelection();
var selectionType = selection.getSelectionType();
if (selectionType == SlidesApp.SelectionType.TABLE_CELL) {
  var currentPage = selection.getCurrentPage();
  var tableCells = selection.getTableCellRange().getTableCells();
  var table = tableCells[0].getParentTable();
  Logger.log('Number of table cells selected: ' + tableCells.length);
}

リターン

TableCellRange

承認

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

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

getTextRange()

選択された TextRange を返します。選択内容が SelectionType.TEXT 型でない場合は null を返します。

TextRange は次の 2 つのシナリオを表します。

1. テキストの範囲を選択しました。たとえば、シェイプに「こんにちは」というテキストが含まれ、「He」が選択されている場合、返される範囲は TextRange.getStartIndex() = 0、TextRange.getEndIndex() = 2 となります。

2. カーソル位置。たとえば、シェイプに「Hello」というテキストがあり、カーソルが「H|ello」の後にある場合、返される範囲は TextRange.getStartIndex() = 1、TextRange.getEndIndex() = 1 となります。

var selection = SlidesApp.getActivePresentation().getSelection();
var selectionType = selection.getSelectionType();
if (selectionType == SlidesApp.SelectionType.TEXT) {
  var currentPage = selection.getCurrentPage();
  var pageElement = selection.getPageElementRange().getPageElements()[0];
  var textRange = selection.getTextRange();
  Logger.log('Text selected: ' + textRange.asString());
}

リターン

TextRange

承認

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

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