Office Scriptsの基本!Excel自動化で使う関数とコードの書き方
生徒
「Excelのデータによって、処理を変えたいんですが、どう書けばいいんですか?」
先生
「それは条件分岐を使うと解決できます。条件によって動きを切り替える考え方です。」
生徒
「条件分岐って、難しそうな名前ですね…」
先生
「大丈夫です。信号機のような身近な例で考えると、とても分かりやすいですよ。」
1. Office Scriptsとは?
Office Scriptsは、Excel Onlineで使えるExcel自動化の仕組みです。 セルの値を確認して書き換えたり、表の内容に応じて処理を変えたりと、 人が判断して行っていた作業をコードで再現できます。
その「判断」を担当するのが、条件分岐と呼ばれる考え方です。
2. 条件分岐とは何かをイメージで理解する
条件分岐とは、「もし○○だったら、こうする」という考え方です。 例えば信号機なら、「青なら進む」「赤なら止まる」という判断をしています。
Excel操作でも、「数値が100以上ならOK」「文字が空なら注意」といった判断がよくあります。 これをコードで書くために、ifやswitchを使います。
3. if文の基本構文を理解する
if文は、条件分岐の中でも一番よく使われる書き方です。 条件が正しい場合だけ、特定の処理を実行します。
function main(workbook: ExcelScript.Workbook) {
const sheet = workbook.getActiveWorksheet();
const value = sheet.getRange("A1").getValue() as number;
if (value >= 100) {
sheet.getRange("B1").setValue("合格");
}
}
この例では、A1の数値が100以上のときだけ、 B1に「合格」と表示されます。
4. ifとelseで処理を分ける
条件に当てはまらなかった場合の処理を書くときは、elseを使います。 「そうでなければ」という意味を持ちます。
function main(workbook: ExcelScript.Workbook) {
const sheet = workbook.getActiveWorksheet();
const score = sheet.getRange("A2").getValue() as number;
if (score >= 60) {
sheet.getRange("B2").setValue("合格");
} else {
sheet.getRange("B2").setValue("不合格");
}
}
Excelで点数表を確認して結果を書く作業を、 そのままコードに置き換えた形です。
5. 複数条件を扱うif文の考え方
条件が2つ以上ある場合でも、if文を順番に書くことで対応できます。 これは「条件を上からチェックしていく」イメージです。
Excelでランク分けをするときなどに、とてもよく使われます。
6. switch文とは何かを理解する
switch文は、「決まった値の中から選ぶ」条件分岐に向いています。 if文をたくさん並べるより、読みやすくなる場合があります。
例えば、評価が「A」「B」「C」のように決まっている場合です。
function main(workbook: ExcelScript.Workbook) {
const sheet = workbook.getActiveWorksheet();
const rank = sheet.getRange("A3").getValue() as string;
switch (rank) {
case "A":
sheet.getRange("B3").setValue("とても良い");
break;
case "B":
sheet.getRange("B3").setValue("良い");
break;
default:
sheet.getRange("B3").setValue("要改善");
break;
}
}
値ごとに処理を分けたいときは、switch文が分かりやすくなります。
7. ifとswitchの使い分けポイント
if文は、「範囲」や「条件の組み合わせ」を判断するのが得意です。 一方、switch文は「決まった値ごとの分岐」に向いています。
Excel操作では、数値の大小はif文、分類や区分はswitch文、 というように使い分けるとコードが整理しやすくなります。
8. 条件分岐を使うとExcel自動化が実用的になる
条件分岐を理解すると、単なる自動入力だけでなく、 「考えて判断するExcel自動化」ができるようになります。
Office ScriptsとTypeScriptのif文・switch文は、 実務で使うExcel自動化の土台となる重要な要素です。 Excel画面の判断作業を思い浮かべながら学ぶことで、 自然と理解が深まります。