【スプレッドシート入門】GASって何??作業を自動化する!

Googleスプレッドシート
  • GoogleスプレッドシートとExcelの最大の違いであるGASについて解説してきます
  • Excelが使えないことで、今まで使えていたVBAマクロを使えなかったとしても、GASを覚えればほぼ同じことができます!
スポンサーリンク

GASとは?

GASとは、Google Apps Scriptの略で、Googleのサービスを自動化するスクリプト言語を言います。

Excelマクロというと、VBA(Visual Basic for Applications)という言語で記載するのが一般的ですが、GASでも同じように作業を自動化することができます。
GASもVBA同様、ほかのアプリケーションと連携させながら動かすことができ、スプレッドシートに書いた宛先にメールを一斉送信するなどの操作も行うことができるようになります。

こういった自動化を、一般にRPA(Robotic Process Automation)ということがあります。
よく「Excelマクロはダメ、RPAの方がいい」という意見を聞くことがありますが、ExcelマクロやGASによる自動化も、RPAの一種なので、この点は注意が必要です。

前回Excelとスプレッドシートの違いについて解説していきましたが、ある意味、VBAかGASかという点では、二つは大きく異なるといえるかもしれません。

【スプレッドシート入門】Excelとの比較!
無料でライトに使えるGoogleスプレッドシート、有料のExcelとの考え方の違いをまとめます 将来的には両方使えるようになる方が良いと思われるところ、違いを踏まえて両方を使いこなせるようになるポイントをつかみます 軽くて安いGoogleス
新しいタブで開く)

ちょっと動かしてみる

GASを使うにあたって、何か特別な環境の用意などは不要です。

スプレッドシートを開き、「拡張機能」から「Apps Script」を選択して開くだけです。

ここに次のようなコードを入れて動かしてみましょう。
この時、作成したスプレッドシートに対して、Apps Scriptのプロジェクトがアクセスする権限を持っている必要があるので、初回の利用時は権限の確認が必要なので注意が必要です。

function myFunction() {
 var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
 spreadsheet.getRange('A1').setValue('あ');
}

実行が成功したら、A1セルに「あ」と書いてあることを確認しましょう。

繰り返し処理

といっても、これだけなら、A1セルを選択して「あ」と入力した方が早いです。
そこで、たくさん「あ」と入れるという作業を自動化してみます。

この時に活用するのが繰り返し処理です。
For(…){…}で囲まれた{}の中の処理を、()の条件に従って処理するというものです。

function myFunction() {
 var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
 for(let i = 2; i <= 5; i++) {
 spreadsheet.getRange('A' + i).setValue('あ');
 }
}

パッと見るといまいちわからないかもしれませんが、iに2という数値を与えて、5以下になるまで1ずつ足していく間、{}の中の処理を行うという指示文になっています。

なので、これを実行すると、A2からA5までの間に「あ」と入力されることになります。

これがA100までとなると、入力し続けるよりは、GASを使った方が早いかもしれません。
(※まだこの時点ではコピーした方が早いですが、、、。)

こういった操作を組み合わせて、作業を自動化していくということになります。
次回以降は、IF構文を使って、少しややこしい処理をしていきたいと思います。

コメント

タイトルとURLをコピーしました