カテゴリ: Office Scripts 更新日: 2026/02/25

Office ScriptsでOneDrive/SharePointファイルを読み書きする基本!Excel Online自動化入門

Office ScriptsでOneDrive/SharePointファイルを読み書きする基本
Office ScriptsでOneDrive/SharePointファイルを読み書きする基本

先生と生徒の会話形式で理解しよう

生徒

「Office ScriptsでOneDriveやSharePointに保存しているExcelファイルを自動で読み込んだり保存したりできますか?」

先生

「できますよ。Office Scriptsを使えば、Excel Online上のファイルを開いてデータを読み書きし、自動保存まで行えます。」

生徒

「パソコン初心者でもできますか?」

先生

「大丈夫です。OneDriveやSharePointは“インターネット上の保存場所”です。そこにあるExcelを、ボタン一つで自動操作できる仕組みがOffice Scriptsです。順番に見ていきましょう。」

1. Office Scriptsとは?

1. Office Scriptsとは?
1. Office Scriptsとは?

Office Scriptsは、Microsoft 365のExcel Onlineで使える自動化機能です。ブラウザ上で動くExcelに対して、コードを書いて操作できます。プログラミング言語はTypeScriptですが、難しく考える必要はありません。Excelの操作を文字で書くだけです。

特に、OneDrive保存ファイルSharePoint共有ファイルを自動処理できる点が大きな特徴です。毎日同じ作業をしている人、集計作業が多い人、Excel業務を効率化したい人に最適です。

Office Scriptsはクラウド環境で動作します。クラウドとは、インターネット上のサービスのことです。自分のパソコンの中ではなく、ネット上で動くため、どこからでもアクセスできます。

2. OneDriveとSharePointの違いをやさしく解説

2. OneDriveとSharePointの違いをやさしく解説
2. OneDriveとSharePointの違いをやさしく解説

OneDriveは、個人用のオンライン保存場所です。自分専用のロッカーのようなものです。一方、SharePointはチームで共有するための保存場所です。会社や学校でよく使われます。

Office Scriptsは、これらに保存されたExcelファイルを開いて操作します。特別な読み込み処理を書く必要はありません。Excel Onlineでファイルを開いた状態でスクリプトを実行するだけです。

つまり、Office Scripts ファイル読み込みとは、「開いているExcelファイルのデータを取得すること」を意味します。そして保存は、変更内容が自動で反映される仕組みです。

3. ファイルを開いてデータを読み取る基本コード

3. ファイルを開いてデータを読み取る基本コード
3. ファイルを開いてデータを読み取る基本コード

まずは、OneDriveやSharePointに保存しているExcelファイルをブラウザで開きます。そして「自動化」タブからスクリプトを作成します。

次のコードは、A1セルの値を読み取る例です。


function main(workbook: ExcelScript.Workbook) {
  const sheet = workbook.getActiveWorksheet();
  const value = sheet.getRange("A1").getValue();
  console.log(value);
}

getValueは「値を取得する」という意味です。console.logは、結果を確認するための命令です。


(例)
売上合計

このように、OneDrive上のExcelデータを読み込むことができます。

4. データを書き込んで保存する方法

4. データを書き込んで保存する方法
4. データを書き込んで保存する方法

次に、Excelファイルへデータを書き込みます。Office Scriptsでは、変更すると自動保存されます。保存ボタンを押す必要はありません。


function main(workbook: ExcelScript.Workbook) {
  const sheet = workbook.getActiveWorksheet();
  sheet.getRange("B1").setValue("自動保存テスト");
}

setValueは「値を設定する」という意味です。このコードを実行すると、OneDriveやSharePoint上のExcelファイルが更新されます。

これがOffice Scripts 保存処理の基本です。

5. 複数セルを読み書きする方法

5. 複数セルを読み書きする方法
5. 複数セルを読み書きする方法

実務では複数のデータを扱います。次は範囲指定の例です。


function main(workbook: ExcelScript.Workbook) {
  const sheet = workbook.getActiveWorksheet();
  const range = sheet.getRange("A1:A3");
  const values = range.getValues();
  console.log(values);
}

getValuesは複数セルをまとめて取得します。


(例)
[
 ["100"],
 ["200"],
 ["300"]
]

次はまとめて書き込む例です。


function main(workbook: ExcelScript.Workbook) {
  const sheet = workbook.getActiveWorksheet();
  const data = [["東京"], ["大阪"], ["名古屋"]];
  sheet.getRange("C1:C3").setValues(data);
}

setValuesを使うと、SharePoint共有ファイルにも一括入力できます。大量データ処理に便利です。

6. シートを追加してデータを保存する

6. シートを追加してデータを保存する
6. シートを追加してデータを保存する

ファイルの中に新しいシートを作ることもできます。これは報告書自動作成などに役立ちます。


function main(workbook: ExcelScript.Workbook) {
  const newSheet = workbook.addWorksheet("自動作成シート");
  newSheet.getRange("A1").setValue("レポート作成完了");
}

addWorksheetは「シート追加」です。実行すると、OneDrive保存ファイルに新しいシートが追加されます。

7. Office Scriptsで業務を自動化するメリット

7. Office Scriptsで業務を自動化するメリット
7. Office Scriptsで業務を自動化するメリット

Office Scriptsを使えば、Excel自動化、クラウド保存、自動更新が可能になります。特にSharePoint共有ファイルを扱う場合、複数人の作業を効率化できます。

毎日の売上集計、在庫管理、勤怠データ処理などもボタン一つで実行できます。プログラミング初心者でも、Excel操作の延長として学べます。

重要なのは、難しく考えないことです。Excelでしている作業を文章にするだけです。OneDriveやSharePointのファイルを開き、セルを指定し、値を読み書きする。それだけです。

Office Scriptsは、Excel Online自動化、Microsoft 365業務効率化、クラウドExcel管理に欠かせない機能です。初心者こそ、早い段階で触れておくと将来大きな武器になります。

まとめ

まとめ
まとめ

今回は、Office Scriptsを活用してOneDriveやSharePointに保存されているExcelファイルを読み込み、書き込み、自動保存する基本的な方法を学びました。Office ScriptsはExcel Online上で動作する自動化機能であり、クラウド環境のExcelファイルを直接操作できる点が大きな特徴です。OneDrive保存ファイルは個人利用に適しており、SharePoint共有ファイルはチームでの共同作業に適しています。どちらもブラウザで開いた状態のExcelファイルに対してスクリプトを実行するだけで、自動処理が可能になります。

ファイル読み込みではgetValueやgetValuesを使用し、セルや範囲のデータを取得しました。保存処理ではsetValueやsetValuesを使い、変更内容は自動保存される仕組みでした。つまり、特別な保存命令を書く必要はなく、コード実行後にそのままクラウド上へ反映されます。これはExcel自動化を進めるうえで非常に重要なポイントです。

また、addWorksheetを使うことでシートを追加し、レポート作成や集計結果の出力を自動化できることも確認しました。日々の売上管理、在庫管理、勤怠管理など、繰り返し行う業務はOffice Scriptsで大幅に効率化できます。Excel業務効率化、クラウド自動化、Microsoft 365活用という観点からも、Office Scriptsはこれからの標準スキルといえます。

サンプルプログラム総復習

最後に、読み込みと書き込みを組み合わせた基本例を確認しておきましょう。


function main(workbook: ExcelScript.Workbook) {
  const sheet = workbook.getActiveWorksheet();

  // A1の値を取得
  const inputValue = sheet.getRange("A1").getValue();

  // B1へ書き込み
  sheet.getRange("B1").setValue("入力値は:" + inputValue);

  // 新しいシートを追加
  const reportSheet = workbook.addWorksheet("処理結果");
  reportSheet.getRange("A1").setValue("自動処理完了");
}

実行結果のイメージは次の通りです。


A1に入力されていた値がB1へ表示される
新しいシート「処理結果」が追加される

このように、Office Scriptsは「ファイルを開く」「セルを指定する」「値を読み込む」「値を書き込む」という流れを理解すれば、OneDriveやSharePointのExcelファイルを自在に操作できます。難しい専門用語を覚えるよりも、まずは簡単なコードを書いて動かしてみることが大切です。繰り返し触れることで、Excel Online自動化の仕組みが自然に身につきます。

先生と生徒の振り返り会話

生徒

「Office ScriptsでOneDriveやSharePointのファイルを読み書きできる仕組みがよく分かりました。開いているExcelを操作するだけなんですね。」

先生

「その通りです。ファイル読み込みはgetValueやgetValues、書き込みはsetValueやsetValuesでしたね。」

生徒

「保存処理を書かなくても自動保存されるのは便利ですね。Excel自動化が身近に感じました。」

先生

「はい。クラウド上で完結するため、どこからでも実行できます。SharePoint共有ファイルでも同じように使えます。」

生徒

「これなら売上集計やレポート作成も自動化できそうです。Excel OnlineとMicrosoft 365をもっと活用したいです。」

先生

「ぜひ挑戦してください。小さな処理から始めれば、やがて大きな業務効率化につながります。Office Scriptsは初心者にも扱いやすい強力な自動化ツールです。」

カテゴリの一覧へ
新着記事
New1
Office Scripts
Office Scriptsでセル値を一括変換!Excel自動化でトリム・置換・整形をする方法
New2
Office Scripts
Office Scriptsの基本!Excel自動化で使う関数とコードの書き方
New3
Excel VBA
Excel VBAとOffice Scriptsの違いを比較!初心者でもわかる学ぶべきスキル
New4
Excel VBA
Excel VBAでセルに数式を入力!FormulaとFormulaR1C1の違いを徹底解説
人気記事
No.1
Java&Spring記事人気No1
Office Scripts
Office Scriptsで別ブックを開いてデータ取得する方法|OneDrive・SharePoint連携でExcel自動化
No.2
Java&Spring記事人気No2
Excel VBA
個人用マクロブック(PERSONAL.XLSB)で作る最強の共通ライブラリ化ガイド
No.3
Java&Spring記事人気No3
Excel VBA
Excel VBA参照設定エラー「参照が見つかりません」を完全解説!初心者でも原因と対処法がわかる
No.4
Java&Spring記事人気No4
Excel VBA
Excel VBAで列の追加・行の削除を自動化!InsertとDeleteの使い方を初心者向けに徹底解説
No.5
Java&Spring記事人気No5
Excel VBA
Excel VBAモジュール共有術!複数のブックでマクロを使い回す最適構成
No.6
Java&Spring記事人気No6
Excel VBA
Excel VBAは今後なくなる?将来性と企業での活用状況を詳しく解説
No.7
Java&Spring記事人気No7
Excel VBA
VBAのコメントの書き方を完全ガイド!初心者でもわかる説明文の付け方
No.8
Java&Spring記事人気No8
Excel VBA
Excel VBAのループ処理を徹底解説!For文とDo Loopで繰り返しを自動化