Class Selection

選択

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

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

メソッド

メソッド戻り値の型概要
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 を返します。

const selection = SlidesApp.getActivePresentation().getSelection();
const 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 を返します。

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}`);
}

戻る

PageElementRange

承認

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

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

getPageRange()

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

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}`,
  );
}

戻る

PageRange

承認

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

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

getSelectionType()

SelectionType を返します。

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()}`);
}

戻る

SelectionType

承認

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

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

getTableCellRange()

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

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}`);
}

戻る

TableCellRange

承認

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

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

getTextRange()

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

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

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

2. カーソルの位置。たとえば、シェイプに「Hello」というテキストがあり、カーソルが「H」の後に位置している場合(「H|ello」)、返される範囲は TextRange.getStartIndex() = 1、TextRange.getEndIndex() = 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()}`);
}

戻る

TextRange

承認

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

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