【営業でも分かる!】GASの関数とは?関数の部品化をすると便利?呼び出し方も解説!

関数の呼び出し方

スクリプトを書いていく上で、いろいろな関数(「function myFunction() {~}」)を書きますが、同じ様なスクリプトをいつも書いていることってありませんか?

昔、プログラマーの友人が、よく「プログラムは過去作ったものを、上手く使いまわしをすれば、かなり効率的なんだよ。。。」と言っていたのを思い出しました。あの時は、あまり良く分かってなかったけれど、今、GASのプログラムを書いていて、なるほど。。。という実感もあるので、ここに記載します。

目次

関数とは

まず、関数は、よく見かける「function myFunction() {~}」のことで、「function ~」は、function文による関数の宣言になります。「function myFunction() {~}」は、もっともシンプル(簡単)なタイプですね。
正式に書くと

function myFunction() {
  console.log("テキスト");
}

となり、説明を加えるのあれば、

function myFunction() {
↑ 「myFunction」という関数を宣言
console.log(“テキスト”);
↑ 「テキストという文字を表示しないさい」という処理
}

となります。
この様に記載して、「Ctrl」+「S」で保存すれば、スクリプト内の実行する関数名の箇所(①)が「myFunction」になりますね。
一つ関数の完成です。笑

「console.log(“テキスト”)」の部分には、本当に沢山の処理を書きますので、世の中には沢山の関数が存在することになります。

関数の部品化を行うと、凄く便利!

でも、新たにスクリプトを書いていて、同じ様な関数を書いているって事、多くないですか?
「以前も同じ様な関数を書いたな。。。」とか、「以前の関数と似てるな。。。」とか、結構ありますよね。それぞれを一つの関数にして、部品化して都度読み出してあげる様にすれば、毎回、スクリプトを書かなくても良くなり、作業の効率化が図れると共に、スクリプトのミスが減りますね。

部品化した関数を呼び出す方法

主の関数から部品化した関数を読み出す方法

関数は、上記の(①)で選んで実行するだけでなく、別の関数から呼び出す事もできます。その呼び出し方は下記の通り。myFunction()を実行するとmyFunction()の中の処理が実行され、その中に別の関数名「 Getnow()」があるので、そこで今度は「Getnow関数」が実行されます。

function myFunction() {
  let datetime = Getnow()
  console.log(datetime);
}

function Getnow() {
  let date = new Date();
  return date;
}

実行ログ:Sat May 07 2022 23:52:15 GMT+0900 (Japan Standard Time)

上記の通りになり、myFunction()から読み出す事ができました。

読み出す方法は、関数名()を処理の中に入れてあげるだけです。
上記の場合、「Getnow() 」ですね。

同じプロジェクト内であれば、他のgsファイルの関数も読み出すことも可能

必ずしも、同じgsファイル内に記載する必要はありません。同じプロジェクト内であれば、他のgaファイルからでも読み出す事が可能です。

1.例えば、「コード1.gs」にGetnow部品化した関数を入力し、

2.「コード2.gs」のmyFunction関数から「Getnow関数」を読み出して処理させます。

3.実行ログでは、正しく読み出され、処理が行われたようです。

まとめ

如何でしたでしょうか?
これを知っていれば、以前作成した関数をそのまま流用して活かしたり、新しい関数の部品として利用することができると思います。他の方が作った関数を利用する事も可能です。一から作成できる能力は必要かもしれませんが、効率的に、省略できるところは省略して、業務効率化を図っていきましょう。

次回は、関数を呼び出す際に、引数と戻り値を入れる方法を解説します。

それでは、楽しいGASで、業務効率化を図っていきましょう!

お知らせ(1)

Google Analytics 4 (GA4)やユニバーサルアナリティクス(UA)の事を、営業でも分かるように記載しておりますので、是非、御覧ください。

お知らせ(2)

Google Apps Scriptを利用して業務効率をアップさせる記事も書いております。営業でも分かるように記載しておりますので、是非是非、御覧ください。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA