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

Office ScriptsでCSVを読み書きする基本構造|Excel自動化とデータ変換の入門ガイド

CSVを読み書きするための基本構造
CSVを読み書きするための基本構造

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

生徒

「Office ScriptsでCSVファイルを読み込んだり、書き出したりしたいんですが、どうやってExcel自動化をすればいいんですか?」

先生

「Office Scriptsを使えば、Excel Online上でCSVデータの読み書きや変換処理を自動化できます。コードはシンプルですよ。」

生徒

「CSVってそもそも何ですか?パソコンもあまり触ったことがなくて…。」

先生

「CSVはデータをカンマで区切ったテキストファイルです。Excelととても相性が良いので、基本構造を一緒に見ていきましょう。」

1. Office Scriptsとは?

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

Office Scriptsは、Excel Onlineで使える自動化スクリプト機能です。Excelの操作をコードで自動化できるため、繰り返し作業やデータ処理を効率化できます。プログラミング未経験者でも、セルに文字を書く、表を作る、といった身近な操作から始められます。

Office ScriptsはTypeScriptという言語を使います。TypeScriptとは、JavaScriptをより安全に書けるようにした言語です。難しく感じるかもしれませんが、最初は「Excelを動かすための命令文」と考えてください。

2. CSVとは?Excelとの関係

2. CSVとは?Excelとの関係
2. CSVとは?Excelとの関係

CSVとは「Comma Separated Values」の略で、カンマ区切りのデータ形式です。たとえば、名前と年齢を保存するときに「山田,20」のように保存します。とてもシンプルなテキスト形式なので、データ交換やデータ変換でよく使われます。

ExcelではCSVファイルを開くことができ、表形式で表示されます。Office Scriptsを使えば、このCSVデータを自動で読み込み、加工し、再びCSV形式で書き出すことができます。

3. Office ScriptsでCSVを書き出す基本構造

3. Office ScriptsでCSVを書き出す基本構造
3. Office ScriptsでCSVを書き出す基本構造

まずはExcelのデータをCSV形式の文字列に変換する方法を見てみましょう。CSVへの書き出しは「セルの値を取得して、カンマでつなぐ」という流れです。


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

  let csv = "";
  for (let row of values) {
    csv += row.join(",") + "\n";
  }

  console.log(csv);
}

このコードでは、A1からB2の範囲を取得し、値を配列として取り出しています。配列とは、データを箱に順番に入れたものです。その後、joinという命令でカンマ区切りの文字列に変換しています。


例:
名前,年齢
山田,20

このように、ExcelのデータをCSV形式に変換できます。Excel自動化とデータ出力の基本構造です。

4. CSVを読み込む基本構造

4. CSVを読み込む基本構造
4. CSVを読み込む基本構造

次はCSV形式の文字列をExcelに書き込む方法です。CSVはただの文字列なので、カンマで分割すればExcelの表に戻せます。


function main(workbook: ExcelScript.Workbook) {
  const csvData = "商品,価格\nりんご,100\nみかん,150";

  const rows = csvData.split("\n");
  const result: string[][] = [];

  for (let row of rows) {
    result.push(row.split(","));
  }

  const sheet = workbook.getActiveWorksheet();
  sheet.getRange("A1").getResizedRange(result.length - 1, result[0].length - 1).setValues(result);
}

splitは、文字を区切る命令です。改行で分けて行を作り、カンマで分けて列を作ります。これがCSV読み込みの基本構造です。

5. TSVとの違いと変換方法

5. TSVとの違いと変換方法
5. TSVとの違いと変換方法

TSVは「Tab Separated Values」の略で、タブで区切る形式です。CSVとの違いは区切り文字だけです。Office Scriptsでは区切り文字を変えるだけで対応できます。


function main(workbook: ExcelScript.Workbook) {
  const sheet = workbook.getActiveWorksheet();
  const values = sheet.getRange("A1:B2").getValues();

  let tsv = "";
  for (let row of values) {
    tsv += row.join("\t") + "\n";
  }

  console.log(tsv);
}

「\t」はタブを表します。CSV変換とTSV変換の基本は同じです。データ変換の仕組みを理解すれば応用できます。

6. 実務で使えるCSV自動化の例

6. 実務で使えるCSV自動化の例
6. 実務で使えるCSV自動化の例

実際の業務では、特定の列だけを書き出したい場合もあります。たとえば名前だけをCSV出力する例です。


function main(workbook: ExcelScript.Workbook) {
  const sheet = workbook.getActiveWorksheet();
  const values = sheet.getRange("A1:A5").getValues();

  let csv = "";
  for (let row of values) {
    csv += row[0] + "\n";
  }

  console.log(csv);
}

このように、Office Scriptsを使えばExcelのデータ抽出、CSV書き出し、データ加工を自動化できます。Excel自動化、CSV変換、TSV変換、データ処理といったキーワードは、業務効率化に直結します。

7. CSV読み書きの基本構造まとめ理解

7. CSV読み書きの基本構造まとめ理解
7. CSV読み書きの基本構造まとめ理解

CSVの読み書きの基本構造は、「取得」「分割」「結合」「書き込み」の四つです。Excelのセル範囲を取得し、配列として扱い、カンマやタブで区切り、再び書き戻す流れです。

Office Scriptsを使ったExcel自動化は、難しい専門知識がなくても始められます。CSVファイル処理やデータ変換は、多くの現場で求められるスキルです。まずは小さなコードから試し、Excel操作を自動化する感覚を身につけていきましょう。

まとめ

まとめ
まとめ

今回はOffice Scriptsを使ったCSV読み書きの基本構造について学びました。Excel自動化を実現するためには、セルの取得、配列操作、文字列の分割と結合、そして書き込みという流れを理解することが重要です。CSVはカンマ区切りのシンプルなテキスト形式ですが、データ変換やデータ出力、データ加工の現場では非常に重要な役割を持っています。Office Scriptsを活用すれば、Excel Online上での定型業務を自動化でき、手作業による入力ミスや転記作業の負担を大きく減らせます。

特にExcel自動化とCSV変換の組み合わせは、売上管理、顧客情報整理、商品一覧出力、在庫データ処理など幅広い業務に応用できます。配列としてデータを扱うことに慣れることで、行と列の概念が自然と身につきます。splitで分割し、joinで結合するという基本操作を理解すれば、CSVだけでなくTSV変換やその他のテキストデータ処理にも応用できます。データ処理の基本は「区切る」「まとめる」「整える」です。この流れを意識することがExcelスクリプト活用の第一歩です。

また、Office ScriptsはTypeScriptを使いますが、難しい構文をすべて覚える必要はありません。まずはworkbookからシートを取得し、getRangeで範囲を指定し、getValuesで配列を取得するという基本形を繰り返し練習しましょう。CSV出力ではjoin、CSV読み込みではsplitを使うというパターンを理解すれば、実務でのデータ変換や自動レポート作成にも対応できます。

サンプルプログラムで振り返るCSV変換処理


function main(workbook: ExcelScript.Workbook) {
  const sheet = workbook.getActiveWorksheet();
  const values = sheet.getRange("A1:C3").getValues();

  let csv = "";
  for (let row of values) {
    csv += row.join(",") + "\n";
  }

  console.log(csv);
}

商品,価格,在庫
りんご,100,30
みかん,150,20

このように、セル範囲の取得からCSV文字列への変換までの流れは非常にシンプルです。Excel自動化の基本は、繰り返し処理とデータの整形です。CSV読み込みでも同様に、改行で分割し、カンマで列を分けて二次元配列に変換することで、Excelの表として再構築できます。


function main(workbook: ExcelScript.Workbook) {
  const csvData = "名前,年齢\n佐藤,25\n田中,30";

  const rows = csvData.split("\n");
  const result: string[][] = [];

  for (let row of rows) {
    result.push(row.split(","));
  }

  const sheet = workbook.getActiveWorksheet();
  sheet.getRange("A1")
       .getResizedRange(result.length - 1, result[0].length - 1)
       .setValues(result);
}

CSV読み書きの基本構造を理解すれば、データ抽出、自動整形、自動保存、定期レポート作成など、Excel業務効率化の幅が大きく広がります。Office Scriptsはクラウド環境で動作するため、複数人での共有や自動実行にも対応しやすい点が特徴です。Excel操作の自動化スキルは、現代の業務効率化において重要な武器になります。

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

生徒

「CSV読み書きの流れがやっと分かってきました。取得して、分割して、結合して、書き込むという順番なんですね。」

先生

「その通りです。Excel自動化では配列の扱いがとても大切です。getValuesで取得し、splitとjoinで整形する。この基本構造を覚えておきましょう。」

生徒

「TSV変換も区切り文字が違うだけでしたね。応用すればいろいろなデータ変換ができそうです。」

先生

「そうですね。CSV変換、TSV変換、データ加工、データ出力はすべて同じ考え方です。まずは小さな表で練習し、Excelスクリプトの感覚を身につけてください。」

生徒

「これからは手作業でコピーするのではなく、Office Scriptsで自動化してみます。」

先生

「それが大切です。繰り返し作業は自動化し、時間をより価値のある分析や改善に使いましょう。CSV読み書きの基本構造を理解したあなたなら、きっと応用できますよ。」

関連記事:

関連記事なし

カテゴリの一覧へ
新着記事
New1
Office Scripts
Office ScriptsでCSVを読み書きする基本構造|Excel自動化とデータ変換の入門ガイド
New2
Excel VBA
VBA変数のスコープを徹底解説!モジュールレベルと関数設計の使い分け
New3
Office Scripts
Office ScriptsでSharePointライブラリからファイルを読み込む方法|Excel Online自動化入門
New4
Excel VBA
Excel VBA関数の命名規則まとめ!処理内容がわかる名前の付け方を詳しく解説
人気記事
No.1
Java&Spring記事人気No1
Excel VBA
Excelマクロのセキュリティ設定の基本!安全に実行するための信頼センター設定まとめ
No.2
Java&Spring記事人気No2
Office Scripts
Office Scriptsでできること・できないことを完全整理!Excel自動化の基本と限界をやさしく解説
No.3
Java&Spring記事人気No3
Office Scripts
Office Scriptsで日付判定!Excel条件付き書式を自動化して期限管理をラクにする方法
No.4
Java&Spring記事人気No4
Office Scripts
Office Scriptsの基本!関数分割で読みやすいExcel自動化コードを設計する方法
No.5
Java&Spring記事人気No5
Office Scripts
Office ScriptsとPower Automateの接続準備をやさしく解説!Excel自動化をはじめる第一歩
No.6
Java&Spring記事人気No6
Office Scripts
Office ScriptsでOneDrive/SharePointファイルを読み書きする基本!Excel Online自動化入門
No.7
Java&Spring記事人気No7
Excel VBA
Excel VBAのOptional引数とは?省略可能な引数で柔軟なプロシージャを作る方法
No.8
Java&Spring記事人気No8
Excel VBA
Excel VBAで共通関数を作る方法!再利用性の高いコードを書くための設計術