Office Scripts入門!OneDriveフォルダ構造を活用したExcel自動処理のやり方
生徒
「Office ScriptsでOneDriveのフォルダを使ってExcelを自動処理できるって聞いたんですが、本当ですか?」
先生
「はい、本当です。OneDriveのフォルダ構造をうまく使えば、毎日のExcel作業を自動化できますよ。」
生徒
「フォルダ構造ってなんですか?パソコン初心者でもできますか?」
先生
「フォルダは書類を入れる引き出しのようなものです。順番を決めて整理することで、Office ScriptsとPower Automateを使ったExcel自動化がとても簡単になります。」
1. Office ScriptsとOneDrive自動処理とは?
Office Scriptsとは、Excel Onlineで使える自動化機能です。Microsoft 365環境で動作し、ブラウザだけでExcelの操作を自動化できます。OneDriveやSharePointに保存されたExcelファイルを対象に、繰り返し作業を自動処理できます。
例えば、毎日売上データを保存するフォルダを作り、その中のExcelファイルを自動で集計する仕組みを作ることができます。これが「OneDriveフォルダ構造を活用した自動処理」です。
フォルダ構造とは、フォルダの中にさらにフォルダを入れて整理する方法です。会社の書類棚のように、年度別、月別、部署別に分けることで、Office ScriptsによるExcel自動化がやりやすくなります。
2. OneDriveフォルダ構造を設計する理由
自動処理を成功させるためには、ルールを決めることが重要です。OneDriveにバラバラにExcelファイルを保存すると、自動化が難しくなります。
おすすめの構造例です。
売上管理
├ 2026
│ ├ 01月
│ ├ 02月
└ 2025
このように整理すると、「2026年02月フォルダのファイルだけを処理する」といった自動処理が可能になります。Power Automateと組み合わせることで、指定フォルダ内のExcelを順番に実行できます。
フォルダを整理することは、掃除と同じです。部屋がきれいだと探し物がすぐ見つかるのと同じで、Excel自動化も効率よく動きます。
3. 基本のOffice Scriptsコードを書いてみよう
まずはシンプルなExcel自動化コードを書いてみましょう。これはセルに値を入れる基本コードです。
function main(workbook: ExcelScript.Workbook) {
const sheet = workbook.getActiveWorksheet();
sheet.getRange("A1").setValue("OneDrive自動処理テスト");
}
このコードは、開いているExcelのA1セルに文字を入力します。自動処理の第一歩は、このようにExcelをプログラムで操作することです。
4. フォルダ別データを想定した自動集計処理
次に、売上データを合計する簡単な例です。フォルダ内のExcelに同じ形式のデータがあると仮定します。
function main(workbook: ExcelScript.Workbook) {
const sheet = workbook.getActiveWorksheet();
const values = sheet.getRange("A1:A5").getValues();
let total = 0;
for (let i = 0; i < values.length; i++) {
total += Number(values[i][0]);
}
sheet.getRange("B1").setValue(total);
}
このコードはA1からA5までの数字を合計し、B1に結果を書きます。月別フォルダに同じ形式のExcelを保存しておけば、毎月同じスクリプトで自動集計できます。
5. 新しいシートを自動作成する処理
フォルダ内のデータをまとめるとき、新しいシートを作ることもよくあります。
function main(workbook: ExcelScript.Workbook) {
const newSheet = workbook.addWorksheet("集計結果");
newSheet.getRange("A1").setValue("自動生成シート");
}
このように、Office Scriptsではシート作成も簡単です。OneDriveの決まったフォルダに保存されたExcelファイルを処理し、結果シートを自動生成する流れを作れます。
6. ファイル保存を意識した処理設計
Office Scriptsは実行後に自動保存されます。つまり、OneDriveに保存されたExcelファイルは、スクリプト実行と同時に更新されます。
次の例は日付を入力する処理です。
function main(workbook: ExcelScript.Workbook) {
const sheet = workbook.getActiveWorksheet();
const today = new Date().toLocaleDateString();
sheet.getRange("C1").setValue(today);
}
このコードを月別フォルダ内のExcelで実行すれば、更新日を自動記録できます。これがファイル管理と自動処理を組み合わせるポイントです。
7. Power Automateと連携した完全自動化
さらに便利なのがPower Automateとの連携です。Power Automateは、Microsoft 365の自動化ツールで、OneDriveフォルダにファイルが追加されたらOffice Scriptsを実行する、という設定が可能です。
例えば、「2026年フォルダにExcelが追加されたら自動集計する」というフローを作れます。これにより、Excel業務効率化、業務自動化、データ処理自動化が実現します。
初心者の方は、まずフォルダを整理し、次に簡単なスクリプトを書き、最後にPower Automateでつなぐ流れを意識しましょう。順番を守ることが成功の近道です。
まとめ
今回はOffice Scripts入門として、OneDriveフォルダ構造を活用したExcel自動処理のやり方を学びました。Office ScriptsはExcel Onlineで動作する自動化機能であり、Microsoft 365環境の中で強力な業務効率化を実現できる仕組みです。特にOneDriveのフォルダ構造を整理して設計することで、Excel自動化の成功率は大きく高まります。
自動処理を行ううえで重要なのは、フォルダ設計とルール作りです。年度別、月別、部署別などに整理されたフォルダ構造は、Power Automateとの連携を前提としたExcel業務自動化において非常に効果的です。ファイルが決まった場所に保存されることで、Office Scriptsによるデータ集計、自動更新、シート作成、自動保存処理が安定して実行できます。
また、Office ScriptsはTypeScriptベースで記述しますが、基本的な書き方はとてもシンプルです。セルに値を入力する、範囲を取得する、合計を計算する、新しいシートを作成するなど、Excelの操作をそのままコードに置き換える感覚で理解できます。初心者の方でも段階的に学習すれば、Excel自動処理の仕組みをしっかり身につけられます。
OneDriveフォルダ構造とOffice Scriptsを組み合わせることで、売上管理、月次集計、日付更新、報告書作成などの定型業務を効率化できます。さらにPower Automateと連携することで、ファイル追加をきっかけに自動実行する完全自動化フローも実現可能です。これによりExcel業務効率化、データ処理自動化、業務改善、時間短縮が可能になります。
もう一度、基本的な自動処理の流れを確認しておきましょう。まずOneDriveのフォルダ構造を整理します。次にExcelファイルの形式を統一します。そしてOffice Scriptsで自動集計や自動入力のコードを書きます。最後にPower Automateで実行タイミングを設定します。この順番を守ることが、Excel自動化成功の大切なポイントです。
サンプルプログラムの振り返り
ここで、月別フォルダ内のデータを想定した合計処理のサンプルをもう一度確認します。基本処理を理解することが応用への近道です。
function main(workbook: ExcelScript.Workbook) {
const sheet = workbook.getActiveWorksheet();
const values = sheet.getRange("A1:A5").getValues();
let total = 0;
for (let i = 0; i < values.length; i++) {
total += Number(values[i][0]);
}
sheet.getRange("B1").setValue(total);
}
このコードは、指定範囲の数値を合計し結果を書き込みます。フォルダ内のExcelファイルが同じ形式で保存されていれば、同じOffice Scriptsを繰り返し活用できます。フォルダ構造を整えることが、安定したExcel自動処理につながる理由がここにあります。
生徒
「Office ScriptsとOneDriveフォルダ構造を組み合わせると、Excel自動化がとてもやりやすくなる理由がわかりました。」
先生
「その通りです。フォルダ設計が整っていれば、Power Automateとの連携もスムーズになります。」
生徒
「まずはフォルダを整理して、簡単な集計スクリプトから始めればいいのですね。」
先生
「はい。小さな自動処理を積み重ねることで、Excel業務効率化やデータ処理自動化が実現します。焦らず段階的に学習しましょう。」
生徒
「これからは毎日の売上管理や月次集計を自動化できそうです。Office Scriptsをもっと勉強してみます。」
先生
「とても良い姿勢です。OneDriveフォルダ構造を意識しながらExcel自動処理を設計できれば、実務でも大きな武器になりますよ。」