メインコンテンツまでスキップ

ワークシートの取得

ここではオフィススクリプトを使って、特定のワークシートを取得する方法を、サンプルコードと併せて解説します。

名前を指定して取得する

はじめに最も使用する機会の多い、シート名を指定した取得方法です。

利用するメソッド

Workbookオブジェクトに含まれている、getWorksheetメソッドを使用します。

getWorksheetの型定義
ExcelScript.Workbook.getWorksheet(key: string): Worksheet | undefined;

サンプルコード

getWorksheetを使ったサンプル
function main(workbook: ExcelScript.Workbook) {
/** 対象シート名 */
const sheetname = 'Sheet1';

/** 対象ワークシート */
const sheet = workbook.getWorksheet(sheetname);

if (!sheet) {
throw `${sheetname}という名前のワークシートは存在しません`;
}
}

インデックスから取得する

n 番目のシートと指定して取得する場合です。

利用するメソッド

Workbookオブジェクトに含まれている、getWorksheetメソッドを使用します。

getWorksheetの型定義
ExcelScript.Workbook.getWorksheets(): Worksheet[];

サンプルコード

getWorksheetを使ったサンプル
function main(workbook: ExcelScript.Workbook) {
/** ワークブック内の全てのワークシート */
const sheets = workbook.getWorksheets();

/** ワークブック内の2番目のシート */
const secondSheet = sheets[1];
}

最初・最後のシートを取得する

前述したインデックスでも実現できますが、最初・最後のシートを取得する方法です。

利用するメソッド

Workbookオブジェクトに含まれている、getFirstWorksheetメソッド、getLastWorksheetメソッドを使用します。

getFirstWorksheet,getLastWorksheetの型定義
ExcelScript.Workbook.getFirstWorksheet(visibleOnly?: boolean): Worksheet;

ExcelScript.Workbook.getLastWorksheet(visibleOnly?: boolean): Worksheet;

それぞれオプショナルな引数を 1 つ持ち、true を指定した場合は、表示されているワークシートのうち最初・最後のシートを返します。

サンプルコード

getFirstWorksheet,getLastWorksheetを使ったサンプル
function main(workbook: ExcelScript.Workbook) {
/** ワークブック内の最初のワークシート */
const sheets = workbook.getFirstWorksheet();

/** ワークブック内の表示されている中で最後のワークシート */
const sheets = workbook.getLastWorksheet(true);
}