毎日の売上集計やデータの転記など、同じExcel操作を何度も繰り返していませんか。
Excel for the webでは、デスクトップ版のマクロ(VBA)とは異なる「Office Scripts」を使って、繰り返し作業を自動化できます。
Copilotに作業内容を伝えれば、スクリプトの作成や修正を手助けしてもらえますが、生成されたコードを確認し、実際のデータでテストすることも大切です。
Office Scriptsとは
Office Scriptsは、Excel for the webでブックの操作を自動化するための機能です。
TypeScriptをベースにしており、セルの読み書きや書式変更、シートの追加などをスクリプトで実行できます。
作成したスクリプトはブックに関連付けて保存し、必要なときに実行できます。
| 項目 | Office Scripts | VBAマクロ |
|---|---|---|
| 主な利用環境 | Excel for the web | 主にデスクトップ版Excel |
| 主な言語 | TypeScript | Visual Basic for Applications |
| 操作の記録 | アクションレコーダーを利用可能 | マクロの記録機能を利用可能 |
Office Scriptsは、共有ブックをブラウザーで扱う場合や、Microsoft 365の環境で定型処理を行う場合に便利です。
ただし、利用できる機能やCopilotとの連携は、Microsoft 365の契約内容、組織の設定、アカウントによって異なることがあります。
Copilotを使う前に確認したいこと
対象のブックとデータを整理する
スクリプトに何をさせるかを決める前に、対象となるシート名、見出し行、データの範囲を確認します。
たとえば「売上一覧」シートの1行目が見出しで、日付・商品名・数量・金額の順に列が並んでいる、といった情報を整理しておきます。
日付の列に文字列とExcelの日付値が混在している場合など、データの形式に揺れがあると、期待した結果にならないことがあります。
自動化する条件と結果を明確にする
「売上をまとめて」とだけ依頼するより、「指定した日付と一致する行を抽出し、新しいシートに見出しごと転記する」と具体的に伝えるほうが、目的に合ったコードを得やすくなります。
対象日をどのように指定するか、抽出結果のシート名をどうするか、同名のシートがすでにある場合にどうするかも決めておきましょう。
アクションレコーダーで操作を記録する
Office Scriptsを初めて使うときは、アクションレコーダーで基本操作を記録すると、スクリプト作成の出発点になります。
Excel for the webで対象のブックを開き、[自動化]タブからアクションレコーダーを開始して、必要な操作を行います。
記録を停止すると、操作内容をもとにスクリプトが作成され、コードエディターで確認できます。
記録した操作をそのまま再生するだけで足りる場合もありますが、毎回異なる日付を指定するなど、条件を変えたい処理ではコードの編集が必要です。
CopilotにOffice Scriptsの作成を依頼する
依頼文に含める情報
Copilotに依頼するときは、ブックの構成、処理の条件、出力方法、例外時の動作をできるだけ具体的に記述します。
たとえば、次のように伝えると要件を整理しやすくなります。
「売上一覧」シートの1行目を見出しとして扱い、「日付」列が指定日と一致するデータを抽出してください。
見出し行と該当する行を新しいシートに転記し、同名のシートが存在する場合は上書きせず別名にしてください。
指定日をどのように入力するかも説明してください。
Office ScriptsのコードエディターでCopilotを利用できる場合は、生成されたコードを内容とともに確認し、必要に応じて追加の指示を出します。
利用できる画面や操作方法は環境によって異なるため、Copilotが表示されない場合は、契約プランや管理者による設定も確認してください。
生成されたコードを確認する
コードを実行する前に、対象シート名や列の判定方法が実際のブックと一致しているかを確認します。
特に、日付の比較、空白行の扱い、出力先シートの作成方法は、データの形式や運用によって調整が必要です。
Copilotが生成したコードは必ず正しいとは限らないため、実行前の確認とテストが欠かせません。
スクリプトを実行して結果を確認する
コードエディターでスクリプトを保存し、実行ボタンから処理を試します。
対象のブックに意図しない変更が起きても困らないよう、最初はコピーしたブックやテスト用データで実行するのがおすすめです。
実行後は、抽出された行の数、日付の一致、見出しの有無、出力先のシートを確認します。
期待した結果にならなければ、エラー表示やコードを確認し、Copilotに「どの条件で問題が起きたか」を伝えて修正を依頼します。
Office Scriptsを安全に運用するポイント
- 元データを保護する:初回はブックのコピーでテストし、重要なファイルでは実行前にバックアップを取ります。
- 条件を具体化する:列名や対象シート、日付形式、空白行の扱いを明確にします。
- 実行結果を検証する:件数や合計値など、処理前後で比較できる指標を決めておきます。
- 共有範囲に注意する:共有ブックでスクリプトを使う場合は、実行する人やデータへのアクセス権を確認します。
定型処理をさらに自動化したい場合は、Office ScriptsをPower Automateから呼び出す方法もあります。
ただし、実行条件や利用可能なコネクタ、ライセンスなどの確認が必要になるため、まずはExcel上でスクリプト単体の動作を確かめてから検討しましょう。
まとめ
Office Scriptsを使えば、Excel for the webでもデータ抽出や転記などの繰り返し作業を自動化できます。
アクションレコーダーで操作を記録し、Copilotに具体的な条件を伝えることで、スクリプトの作成や修正を進めやすくなります。
生成されたコードはテスト用のブックで実行し、結果が正しいことを確認してから本番環境で使いましょう。
