【初心者向け】実践!オリジナル関数で学ぶ スプレッドシート スクリプトエディタの使い方

ご覧いただき、誠にありがとうございます。

この記事では、Google Apps Script初学者や、いつもより、ちょっと便利にスプレッドシートを利用したい方向けにスプレッドシート スクリプトエディタの初歩的な使い方を紹介していきます。簡単なエクセル関数(SUMくらい)しかわからないし、プログラミングも全くわからない・・・という方でも大丈夫です!

身近な「ちょっと便利」なオリジナル関数を作ることで、スムーズにGoogle Apps Scriptや、スクリプトエディタの使い方が理解できるようになります。

例えば、消費税率が変更になる前にスプレッドシートで以下のような商品管理をしていたと仮定します。

金額欄にはすべての商品が=(税抜き金額)*1.08という形でセルの中に入力されています。
これでは消費税率が変更になった場合、すべてのデータを( *1.08 → *1.1 に )打ち込みなおす必要があります。

10個や20個ならあまり時間はかかりませんが、100個以上などになると、相当な時間がかかりますよね。(※厳密に言うと「検索と置換」を利用することですぐに解決できますが、今回は学習の為と割り切りましょう。)

そんな時に、税率を設定するだけで税込み金額を返してくれるようなオリジナル関数があったら便利だと思いませんか?税率が変わってもオリジナル関数の値を変更するだけで、他のセルの値も勝手に変わってくれます。

今回は、上記のように「ちょっと便利」なオリジナル関数を作りながら、スプレッドシート スクリプトエディタの初歩的な使い方を学んでいきましょう。

スプレッドシート スクリプトエディタの起動方法

まずは、〇で囲ってある「ツール」から「スクリプトエディタ」を起動してみましょう。開けない場合は、Googleアカウントをいくつか利用していて、デフォルトでないGoogleアカウントから起動を試みている可能性があります。デフォルトアカウントでログインをしてから再挑戦してみてください。

このような画面になれば起動成功です。〇の部分をクリックすることで、名前を変更できます。わかりやすい名前に変えておきましょう。それでは、実際に関数を書いてみましょう!

簡単な関数を作ってみよう

上記画像が、実際に作ってみる関数です。初心者にとっては、何がなんだかわからないですよね。下記で一つ一つ説明していきます。

関数名を設定しよう

まずは、ファイル名を変更しましょう。画像の〇部分をクリックし、「Rename」を選択することで、名前を変更できます。今回は、関数名と同じものに設定しましょう。

コードを書いてみよう

① function TAXIN(price){
② const tax = 1.1;
③ return price * tax;
④ }

行ごとにコードに番号を振っています。
1行目から順を追って説明していきます。

・関数のルール

function 関数名(引数){
//ここにコードを書いていく
}

上記文は定型文だと思ってください。

関数名・・・自分で決めることができます。(日本語でもOK)
引数・・・セルから受け取る値

引数って何・・・??とプログラミング未経験者は思いますよね(笑)
皆さんご存じEXCELのSUM関数みたいな物でわかりやすく説明します。

・引数ってなに?

function 足し算(A,B) {
return A + B;
}
上記のコードを作成したとします。

(A,B)が引数になります。エクセルでSUM関数を使うときは、セルに=SUM(足し算したいセル①,足し算したいセル②)を入力しますよね。

この(足し算したいセル①,足し算したいセル②)が引数なのです。簡単に説明すると、コードの外から、「足し算したいセル①」を「A」としてコードの中で扱いますよ。また、「足し算したいセル②」を「B」としてコードの中で扱いますよ。という意味になります。実際に実行すると、下記画像のようになります。

これで引数の意味がなんとなくご理解いただけたかと思います。
また、画像のC12セルに250(C5+C6)が返っていることからreturnの意味もなんとなくご理解いただけたかと思います。

・constってなに?

表題のコードに説明を戻ります。
① function TAXIN(price){
② const tax = 1.1;
③ return price * tax;
④ }

①が理解できたところで、次は②です。「const」は、コードの中で、定数や、変数を扱いたい時に使います。

const 変数名 = 値;

上記のような宣言をすることで、コード中において、「値」を自分で決めた定数名として扱うことができます。※Google Apps Scriptにおいて、すべての処理文の後に;(セミコロン)をつける必要があります。

上記コードでは、変数「tax」に「1.1」という数値を代入するという処理がなされています。

・returnってなに?

① function TAXIN(price){
② const tax = 1.1;
③ return price * tax;
④ }

③の部分を説明していきます。
returnは、実際にセルに反映させる値を返すという処理になります。

今回書いたコードは、画像のようにC5セルから受け取った引数を宣言した変数「tax(中身は1.1)」と掛け算した値をスプレッドシート上で、=TAXIN(引数)と設定したセルに返すという処理になります。

コードを実行して、保存しよう

スクリプトエディタを用いてコードが書けたら、実行して、保存しなければスプレッドシート上で扱うことはできません。

画像の再生マークを押すことで、「実行」ができます。この際に、コードにエラーがあれば教えてくれます。
無事「実行」が成功したら、フロッピーのマークを押すことで、保存することができます。

スクリプトエディタ内で、これらの処理を行うことでスプレッドシートでオリジナル関数が使えるようになります。コードを記入、実行、保存できたら、実際にスプレッドシート上でオリジナル関数を使ってみましょう!

まとめ

Google Apps Scriptを利用し、スプレッドシートのスクリプトエディタでオリジナル関数を作ることを紹介しました。上記のように関数を実際に作ってみることで、スクリプトエディタの使い方がスムーズに身についたのではないでしょうか?

今回ご紹介したものは、Google Apps Script活用例の ”ほんの一部” です。まだまだ多くの活用方法がございます。気になる方は、専門書などで詳しく調べてみましょう。Google Apps Script初心者の方は、今回の例のように、「こんな関数あったら便利」という ”想像” を、 ”実装” してみることで、理解がより深まると思います。

今後も是非、思いついた関数をどんどん作っていってみてください。この記事をご覧いただいた皆様にとって、少しでもお力になれたら幸いでございます。