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

最終行の取得

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

利用するメソッド

ExcelScript.Worksheet オブジェクトに含まれている getRange メソッドと、ExcelScript.Range オブジェクトに含まれている、getRowCount メソッドを使用します。

/**
* @param address 範囲の名前またはアドレス
* @return ExcelScript.Rangeオブジェクト
*/
ExcelScript.Worksheet.getRange(address?: string): Range;

/**
* @return 行の合計数
*/
ExcelScript.Range.getRowCount(): number;

getRange メソッドは引数を指定しなかった場合、対象ワークシート全体の範囲が返却されます。

これを利用して取得した範囲の行数を数えることで、最終行を判断できます。

サンプルコード

シート名を指定して、最終行の行数を取得するサンプルコードです。

対象シートが見つからない場合は、エラーをスローします。

function main(workbook: ExcelScript.Workbook) {
/** 対象シート名 */
const sheetname = 'Sheet1';
/** 対象ワークシート */
const sheet = workbook.getWorksheet(sheetname);

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

/** ワークシートの最終行の行数 */
const lastRow = sheet.getRange().getRowCount();
}