ワークシートのコピー
ここではオフィススクリプトを使って、特定のワークシートをコピーする方法を解説します。
利用するメソッド
Worksheet オブジェクトに含まれている、copy メソッドを使用します。
メソッドの詳細
/**
* @param positionType コピーしたシートをどの位置に配置するか(用意されているenumから選択)
* @param relativeTo positionTypeでbeforeまたはafterを選択した場合、対象となるワークシート
* @return コピーされたワークシートのオブジェクト
*/
ExcelScript.Worksheet.copy(
positionType?: WorksheetPositionType,
relativeTo?: Worksheet
): ExcelScript.Worksheet;
引数はいずれも省略可能です。引数を省略した場合、コピーしたシートはワークブックの先頭に配置されます。
サンプルコード
コピーするシート名を指定し、そのワークシートの後ろにコピーしたシートを配置するサンプルコードです。
指定したシートが見つからなかった場合、エラーをスローします。
ワークシートをコピーするサンプル
function main(workbook: ExcelScript.Workbook) {
/** 対象シート名 */
const sheetname = 'Sheet1';
/** 対象ワークシート */
const sheet = workbook.getWorksheet(sheetname);
if (!sheet) {
throw `${sheetname}という名前のワークシートは存在しません`;
}
const copied = sheet.copy(ExcelScript.WorksheetPositionType.after, sheet);
console.log(`${sheetname}をコピーしました。`, `コピー後のシート名: ${copied.getName()}`);
}