見出し画像

OfficeScripts | シートをコピーする

こんにちは。ふらです。今日はOfficeScriptsを使ってシートをコピーする方法についてお話していきたいと思います。


シートをコピー

下記のコードでシートのコピーができます。テンプレートのシートを作っておいてコピーしてデータを入れたり、コピーしてから集計したりと、使いどころが多そうなコードですね。

function main(workbook: ExcelScript.Workbook) {

    //シートをコピーするコード
    let sh1 = workbook.getWorksheet("Sheet2").copy();

    //基準シートの左側にワークシートを追加
    let sh2 = workbook.getWorksheet("Sheet2").copy(ExcelScript.WorksheetPositionType.before, workbook.getWorksheet("Sheet1"));

    //基準シートの右側にワークシートを追加
    let sh3 = workbook.getWorksheet("Sheet2").copy(ExcelScript.WorksheetPositionType.after, workbook.getWorksheet("Sheet1"));

    //先頭に追加
    let sh4 = workbook.getWorksheet("Sheet2").copy(ExcelScript.WorksheetPositionType.beginning);

    //末尾に追加
    let sh5 = workbook.getWorksheet("Sheet2").copy(ExcelScript.WorksheetPositionType.end);

}


単純にシートをコピーする

シートをコピーして、新しく作成されたシートオブジェクトを変数に格納するコードです。後述の位置を指定して追加する手法の方が使いやすいかと思います。

//シートをコピーするコード
let sh1 = workbook.getWorksheet("Sheet2").copy();

基準シートの左側にワークシートを追加

基準シートの左側にワークシートを追加するコードです。下記のコードだとSheet1の左側にコピーしたSheet2を追加する処理となります。

//基準シートの左側にワークシートを追加
let sh2 = workbook.getWorksheet("Sheet2").copy(ExcelScript.WorksheetPositionType.before, workbook.getWorksheet("Sheet1"));

基準シートの右側にワークシートを追加

基準シートの右側にワークシートを追加するコードです。下記のコードだとSheet1の右側にコピーしたSheet2を追加する処理となります。

//基準シートの右側にワークシートを追加
let sh3 = workbook.getWorksheet("Sheet2").copy(ExcelScript.WorksheetPositionType.after, workbook.getWorksheet("Sheet1"));

シートの先頭に追加

シートの先頭(一番左側)にコピーしたシートを追加するコードです。

//シートの先頭に追加
let sh4 = workbook.getWorksheet("Sheet2").copy(ExcelScript.WorksheetPositionType.beginning);

シートの末尾に追加

シートの末尾(一番右側)にコピーしたシートを追加するコードです。

//末尾に追加
let sh5 = workbook.getWorksheet("Sheet2").copy(ExcelScript.WorksheetPositionType.end);

#OfficeScripts #Officeスクリプト #プログラミング #自動化 #業務効率化 #エクセル #M365 #ExcelOnline #osts

この記事が気に入ったらサポートをしてみませんか?