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

Office Scriptsの基本!Excel自動化で使う関数とコードの書き方

セル・レンジ取得の基本と使い方
セル・レンジ取得の基本と使い方

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

生徒

「Excelを毎日使っているんですが、同じ作業ばかりで大変です。Office Scriptsって何ができるんですか?」

先生

「Office Scriptsを使うと、Excelのセルや範囲を自動で操作できます。人がマウスでやる作業を、コードに任せられるんですよ。」

生徒

「セルや範囲って、A1とかB2のことですよね?それをどうやって取るんですか?」

先生

「まさにそこが基本です。まずはセル・レンジの取得方法から、ゆっくり説明していきましょう。」

1. Office Scriptsとは?

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

Office Scripts(オフィス スクリプト)は、Excel Onlineで使える自動化機能です。Excelを開いてボタンを押すだけで、事前に作った処理を一気に実行できます。たとえば「セルに文字を書く」「計算結果を別のセルに入れる」「決まった範囲をまとめて取得する」といった作業を、人の代わりにExcel自身がやってくれます。

プログラミング未経験の人でも、Excelの操作をそのまま文章にしたようなコードなので、少しずつ慣れていけば理解できます。Office ScriptsではTypeScriptという言語を使いますが、難しい文法は最初は気にしなくて大丈夫です。

2. セルとレンジの違いを知ろう

2. セルとレンジの違いを知ろう
2. セルとレンジの違いを知ろう

Excelには「セル」と「レンジ(範囲)」という考え方があります。セルはA1やB2のように、1マスだけを指します。一方レンジは、A1からC3のように、複数のセルをまとめたものです。

身近な例でいうと、セルはノートの1マス、レンジはノートの1行や1ページのようなものです。Office Scriptsでは、このセルやレンジを取得してから、値を読んだり書いたりします。

3. セルを1つ取得する基本の書き方

3. セルを1つ取得する基本の書き方
3. セルを1つ取得する基本の書き方

まずは一番シンプルな「セルを1つ取得する方法」です。Office Scriptsでは、シートを取得してから、その中のセルを指定します。ここでいう「取得」とは、「Excelにあるセルをコードでつかむ」という意味です。


function main(workbook: ExcelScript.Workbook) {
  const sheet = workbook.getActiveWorksheet();
  const cell = sheet.getRange("A1");
  cell.setValue("はじめてのOffice Scripts");
}

このコードでは、A1セルを取得して、文字を書き込んでいます。getRangeは「この場所のセルや範囲をください」という命令です。A1と書けば、A1セルだけを指定できます。


A1セルに「はじめてのOffice Scripts」と表示される

4. レンジ(複数セル)を取得する方法

4. レンジ(複数セル)を取得する方法
4. レンジ(複数セル)を取得する方法

次は、複数のセルをまとめて取得する方法です。たとえばA1からA3までの縦3つのセルを一気に扱うことができます。レンジを使うと、まとめて値を設定したり、まとめて読み取ったりできて便利です。


function main(workbook: ExcelScript.Workbook) {
  const sheet = workbook.getActiveWorksheet();
  const range = sheet.getRange("A1:A3");
  range.setValues([
    ["りんご"],
    ["みかん"],
    ["バナナ"]
  ]);
}

ここではA1からA3までのレンジを取得しています。setValuesは、複数の値を一度に書き込むときに使います。箱にまとめて物を入れるようなイメージで考えると分かりやすいです。


A1〜A3に果物の名前が縦に表示される

5. セルの値を取得して使う

5. セルの値を取得して使う
5. セルの値を取得して使う

セルやレンジは、書き込むだけでなく「中身を読む」こともできます。これを値の取得といいます。たとえば、A1に入っている数値を取り出して、別のセルに使うことができます。


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

getValueは「このセルの中身を教えて」という意味です。人が目で見て数字を確認する代わりに、コードが自動で値を取り出してくれます。


A1の内容がそのままB1に表示される

6. レンジを使った簡単な計算

6. レンジを使った簡単な計算
6. レンジを使った簡単な計算

Office Scriptsでは、セルから取得した数値を使って計算もできます。たとえば、2つのセルの数値を足し算して、結果を別のセルに表示することが可能です。


function main(workbook: ExcelScript.Workbook) {
  const sheet = workbook.getActiveWorksheet();
  const a = sheet.getRange("A1").getValue() as number;
  const b = sheet.getRange("A2").getValue() as number;
  sheet.getRange("A3").setValue(a + b);
}

「as number」は、数値として使いますよ、という目印です。電卓で数字を足すような感覚で、Excelの中身を使って計算できます。


A1とA2の合計がA3に表示される

7. よく使うセル・レンジ操作の考え方

7. よく使うセル・レンジ操作の考え方
7. よく使うセル・レンジ操作の考え方

初心者のうちは、「どのセルを使うのか」「1つなのか複数なのか」を意識するだけで十分です。Office Scriptsでは、必ず取得 → 操作という流れになります。

まずセルやレンジを取得し、そのあとで値を読む、書く、計算するといった処理を行います。これは、紙の書類を机に出してから書き込むのと同じ流れです。

Excel自動化、Office Scripts、セル取得、レンジ操作といったキーワードは、これから何度も出てきますが、最初は「Excelをコードで触る方法」と思っておけば問題ありません。

カテゴリの一覧へ
新着記事
New1
Excel VBA
Excel VBAで業務自動化!初心者でもわかる定型作業の自動化例
New2
Excel VBA
VBAの基本構造を理解しよう!モジュール・プロシージャ・関数の役割まとめ
New3
Office Scripts
Office Scriptsで大量シートを効率管理!Excelワークブック最適構造と自動化テクニック
New4
Excel VBA
Excel VBAが今でも使われ続ける理由とは?現場で評価されるポイントを徹底解説
人気記事
No.1
Java&Spring記事人気No1
Office Scripts
Office Scriptsで別ブックを開いてデータ取得する方法|OneDrive・SharePoint連携でExcel自動化
No.2
Java&Spring記事人気No2
Excel VBA
Excel VBA参照設定エラー「参照が見つかりません」を完全解説!初心者でも原因と対処法がわかる
No.3
Java&Spring記事人気No3
Excel VBA
Excel VBAモジュール共有術!複数のブックでマクロを使い回す最適構成
No.4
Java&Spring記事人気No4
Excel VBA
Excel VBAは今後なくなる?将来性と企業での活用状況を詳しく解説
No.5
Java&Spring記事人気No5
Excel VBA
個人用マクロブック(PERSONAL.XLSB)で作る最強の共通ライブラリ化ガイド
No.6
Java&Spring記事人気No6
Excel VBA
Excel VBAの開発環境を最速で整える!VBEの開き方から基本操作まで完全ガイド
No.7
Java&Spring記事人気No7
Excel VBA
VBAのコメントの書き方を完全ガイド!初心者でもわかる説明文の付け方
No.8
Java&Spring記事人気No8
Excel VBA
Excel VBAで列の追加・行の削除を自動化!InsertとDeleteの使い方を初心者向けに徹底解説