見出し画像

OfficeScripts | シートの存在確認

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


シートの存在を確認する

シートの存在確認を行うためのコードを下記の様に紹介します。シートが存在する場合に一度削除処理をいれてから、新規のシート作成をしたい時にも使えますし、意図せずシートが消えてしまっていた場合もチェックできます。割と使うシチュエーションがあるかと思いますので、一緒に見て行きましょう。

function main(workbook: ExcelScript.Workbook) {

    //シートオブジェクトを変数に格納
    let sh: ExcelScript.Worksheet = workbook.getWorksheet("Sheet1");

    //シートオブジェクトがあれば処理する
    if (sh !== undefined) {
        console.log("Sheet1が存在するため、処理を行います。");
    }

    //全てのシートをsheetsオブジェクトに格納
    const sheets = workbook.getWorksheets();

    //全てのシート名をチェックして、シート名でシート存在を確認
    for (const sh of sheets) {
        if (sh.getName() === "table") {
            console.log("tableが存在するため、処理を行います。");
        }
    }

}

指定したシートの存在を確認する

シートオブジェクトとundefinedを比較してシートの存在確認を行っています。undefinedは「何も割り当てられていない」状態ですので、割り当てられてないに等しくない = 割り当てられているとなるので、シートの存在確認をすることができます。

//シートオブジェクトを変数に格納
let sh: ExcelScript.Worksheet = workbook.getWorksheet("Sheet1");

//シートオブジェクトがあれば処理する
if (sh !== undefined) {
  console.log("Sheet1が存在するため、処理を行います。");
}

全てのシートに対して存在を確認する

全てのシートオブジェクトを取得し、for-of文を利用してシートを1つずつチェックします。今回はシート名を取得して、その名前をif文で指定することでシートの存在を確認しています。

//全てのシート名をチェックして、シート名でシート存在を確認
for (const sh of sheets) {
  if (sh.getName() === "table") {
    console.log("tableが存在するため、処理を行います。");
  }
}

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

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