カテゴリ: 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
Office Scripts
Office Scriptsで日付判定!Excel条件付き書式を自動化して期限管理をラクにする方法
New2
Office Scripts
Office Scripts普及の歴史とMicrosoftの方向性!Excel自動化が進化してきた流れをやさしく解説
New3
Excel VBA
Excel VBA関数を用途別に作成!計算・文字列処理の基本を初心者向けに解説
New4
Office Scripts
Office Scriptsで条件付き書式を自動化!数値変化に応じてExcelの書式を自動更新する方法
人気記事
No.1
Java&Spring記事人気No1
Excel VBA
Excelマクロのセキュリティ設定の基本!安全に実行するための信頼センター設定まとめ
No.2
Java&Spring記事人気No2
Office Scripts
Office Scriptsでできること・できないことを完全整理!Excel自動化の基本と限界をやさしく解説
No.3
Java&Spring記事人気No3
Excel VBA
Excel VBAとOffice Scriptsの違いを比較!初心者でもわかる学ぶべきスキル
No.4
Java&Spring記事人気No4
Excel VBA
目的別にモジュールを分割する方法!処理単位で整理して見やすくするテクニック
No.5
Java&Spring記事人気No5
Excel VBA
Excel VBA基本文法の総まとめ!初心者が必ず押さえるべき20の基礎ポイント完全ガイド
No.6
Java&Spring記事人気No6
Office Scripts
Office Scriptsで条件付き書式を自動化!Excel自動化初心者向けスクリプト操作の基本
No.7
Java&Spring記事人気No7
Excel VBA
Excel VBAの開発環境を最速で整える!VBEの開き方から基本操作まで完全ガイド
No.8
Java&Spring記事人気No8
Office Scripts
Office Scriptsで日付判定!Excel条件付き書式を自動化して期限管理をラクにする方法