officeスクリプトでExcelのシートの倍率を変更する方法

まえがき

ExcelのアクティブセルをA1に戻して倍率を100%に設定し、一番左側のシートに移動するマクロをOfficeスクリプトで実装しようとしましたが、
2024/12/21時点で、Javascript APIにはシートの倍率を変更するメソッドやプロパティが提供されていないため変更できないようです。

Officeスクリプトからシートの倍率を変更したい…)

実行したいコード

参考までに下記のコードを書きましたが、現状TODO箇所のシートの倍率変更部分が実装できません。

function main(workbook: ExcelScript.Workbook) {
  // すべてのシートを取得
  const sheets = workbook.getWorksheets();

  // 各シートのカーソルをA1セルに設定し、倍率を100%に設定
  sheets.forEach(sheet => {
    sheet.getRange("A1").select(); // カーソルをA1セルに設定
    //TODO:シートの倍率を100%にする
  });

  // 一番左のシートをアクティブに設定
  sheets[0].activate();

  console.log("全てのシートの設定が完了しました。");
}

Microsoft 365 Developer Platformでリクエストされている

この機能が欲しい人がいるようで、Microsoft 365 Developer Platformでリクエストされていました。
もし他に欲しい方がいらっしゃいましたら、投票して頂けると助かります。(私が投票した時点で Voted4 になりました)
Change Zoom Level in Excel Worksheet

残念ですが今は実装されるまで待つしかないようです。


スポンサーリンク

もふもふ

プロフィール

著者
もふもふ
プログラマ。汎用系→ゲームエンジニア→Webエンジニア→QAエンジニア。開発からテストまで一通り経験し、実際に詰まった点や検証結果を技術ブログとしてまとめています。