ワークシートの取得
ここではオフィススクリプトを使って、特定のワークシートを取得する方法を、サンプルコードと併せて解説します。
名前を指定して取得する
Section titled “名前を指定して取得する”はじめに最も使用する機会の多い、シート名を指定した取得方法です。
利用するメソッド
Section titled “利用するメソッド”Workbookオブジェクトに含まれている、getWorksheetメソッドを使用します。
ExcelScript.Workbook.getWorksheet(key: string): Worksheet | undefined;引数にはシート名(またはワークシートの ID)を指定します。指定したワークシートが存在しない場合はundefinedが返されるため、取得できたかどうかを確認してから使用します。
サンプルコード
Section titled “サンプルコード”function main(workbook: ExcelScript.Workbook) { /** 対象シート名 */ const sheetname = 'Sheet1';
/** 対象ワークシート */ const sheet = workbook.getWorksheet(sheetname);
if (!sheet) { throw `${sheetname}という名前のワークシートは存在しません`; }}インデックスから取得する
Section titled “インデックスから取得する”n 番目のシートと指定して取得する場合です。
利用するメソッド
Section titled “利用するメソッド”Workbookオブジェクトに含まれている、getWorksheetsメソッドを使用します。
ExcelScript.Workbook.getWorksheets(): Worksheet[];ブック内のすべてのワークシートが配列で返されるため、インデックス(0 から始まる)を指定して取得します。
サンプルコード
Section titled “サンプルコード”function main(workbook: ExcelScript.Workbook) { /** ワークブック内の全てのワークシート */ const sheets = workbook.getWorksheets();
/** ワークブック内の2番目のシート */ const secondSheet = sheets[1];}最初・最後のシートを取得する
Section titled “最初・最後のシートを取得する”前述したインデックスでも実現できますが、最初・最後のシートを取得する方法です。
利用するメソッド
Section titled “利用するメソッド”Workbookオブジェクトに含まれている、getFirstWorksheetメソッド、getLastWorksheetメソッドを使用します。
ExcelScript.Workbook.getFirstWorksheet(visibleOnly?: boolean): Worksheet;
ExcelScript.Workbook.getLastWorksheet(visibleOnly?: boolean): Worksheet;それぞれ省略可能な引数を 1 つ持ち、true を指定した場合は、非表示のワークシートを除いた中で最初・最後のシートを返します。
サンプルコード
Section titled “サンプルコード”function main(workbook: ExcelScript.Workbook) { /** ワークブック内の最初のワークシート */ const firstSheet = workbook.getFirstWorksheet();
/** ワークブック内の表示されている中で最後のワークシート */ const lastSheet = workbook.getLastWorksheet(true);}