MENU
Power Automate
PR

【OfficeScripts】OfficeScriptsでのシート操作完全ガイド

Office Scripts シート 操作
ほし
記事内に商品プロモーションを含む場合があります

こんにちは、今回はOfficeScriptでシートを操作する方法について紹介していきます。

本記事で学べることは以下のような内容になります。

  • シートの追加
  • シートの削除
  • シート名の変更
  • シートのアクティブ化
  • シートのコピー
  • シート操作中のエラーハンドリング

シートの操作

シートの追加

新しいシートを追加するには、workbook.addWorksheet() メソッドを使用します。

function main(workbook: ExcelScript.Workbook) {
  const newSheet = workbook.addWorksheet("新しいシート");
}
すでにシートが存在する場合は、エラーが発生します。
Office Scripts シートの追加
function main(workbook: ExcelScript.Workbook) {
  const sheetName = "新しいシート";
  if (!workbook.getWorksheet(sheetName)) {
    workbook.addWorksheet(sheetName);
  }
}

シートの削除

特定のシートを削除するには、workbook.getWorksheet()でシートを取得し、delete()メソッドを使用します。

function main(workbook: ExcelScript.Workbook) {
  const sheet = workbook.getWorksheet("不要なシート");
  if (sheet) {
    sheet.delete();
  }
}
Office Scripts シートの削除

シート名の変更

シート名を変更するには、setName() メソッドを使用します。

function main(workbook: ExcelScript.Workbook) {
  const sheet = workbook.getWorksheet("古い名前");
  if (sheet) {
    sheet.setName("新しい名前");
  }
}

シートのアクティブ化

アクティブシートを指定するには、activate()メソッドを使用します。

function main(workbook: ExcelScript.Workbook) {
  const sheet = workbook.getWorksheet("対象のシート");
  if (sheet) {
    sheet.activate();
    console.log("アクティブシート:" + sheet.getName())
  }
}
Office Scripts シートのアクティブ

シートのコピー

シートをコピーする際は、copy() メソッドを使用します。

function main(workbook: ExcelScript.Workbook) {
  const sourceSheet = workbook.getWorksheet("元のシート");
  if (sourceSheet) {
    const newSheet = sourceSheet.copy(ExcelScript.WorksheetPositionType.after, sourceSheet);
    newSheet.setName("コピーしたシート");
  }
}
Office Scripts シートのコピー

エラーハンドリング

存在しないシートを指定した場合や、シート名が重複する場合に備えて、try-catch のような対処が有効です。

function main(workbook: ExcelScript.Workbook) {
  const sheetName = "エラーチェック用シート";
  const existingSheet = workbook.getWorksheet(sheetName);

  if (!existingSheet) {
    workbook.addWorksheet(sheetName);
  } else {
    console.log(`「${sheetName}」はすでに存在しています。`);
  }
}

最後に

これで、OfficeScriptで基本的なシートの操作をすることができるようになると思います。

本ブログでは、PowerAutomate やOfficeScriptなどで業務効率化するための記事を執筆しています。

OfficeScriptで、どんなことができるの?って気になる方は、こちらもご覧ください。
あわせて読みたい
【PowerAutomate】Formsの回答をExcelに自動転記する方法「OfficeScripts編」
【PowerAutomate】Formsの回答をExcelに自動転記する方法「OfficeScripts編」
ABOUT ME
ほし
ほし
エンジニア
ほしコラム管理人のほしです。 20代のITエンジニアです。 PowerAutomateで業務効率化の方法を中心に紹介していきます! たまに日常生活についても記事にしていきます! ほしコラム - にほんブログ村
記事URLをコピーしました