今回はgoogleスプレッドシートのマクロ(Google Apps Script)の基本中の基本について解説していきます。
Google Apps Scriptを利用するためにはGoogleアカウント、ブラウザが必要なので用意しておきましょう。
現在私はエンジニアの現場でGoogle Apps Scriptを使用しておりエンジニア以外の仕事でも覚えておけば役立つのでこのスキルを身につけておいて損はないです。
Google Apps Scriptとは
Google Apps ScriptはGmailやGoogleスプレッドシートなどのGoogleが提供しているサービスのほとんどで連携できるプログラム言語です。外部サービスとの連携も可能でTwitter、LINEなどとの連携も可能です。
Google Apps ScriptはJavaScriptが土台となっているプログラミング言語なのでプログラミングを勉強している方もいい勉強になります。
Google Apps Scriptを覚えておけば業務の効率も大幅に良くなるので様々な仕事で役に立ちます。
スプレッドシートでのGoogle Apps Scriptの基本
先ずはGoogleドライブからGoogleスプレッドシートを開き新しいスプレッドシートを作成しましょう。

新しいスプレッドシートを作成したら「ツール」をクリックして「スクリプトエディタ」をクリックします。クリックすると以下のような画面が出てくるのでこの画面でプログラムを書きます。

function myFunction() {
ここに文を書いていきます。
}
Google Apps Scriptでは自動的に保存はされず「ctrl」+「s」で保存となるので注意しましょう。
変数
変数とはデータを入れておく箱のようなものと覚えておけば大丈夫です。慣れるまでに少し時間ががかかると思いますが、最初は誰でも慣れないので地道行きましょう!!
使い方は以下のように使い、これを代入といいます。
var 変数名 = 値
「var」は変数宣言する時に使う文だと覚えておきましょう。
シートとセルについて
次は一つの例から自分の選んだセルに文字列を表示させる方法を解説していきます。先ずはスプレッドエディタに以下の文字列を書きましょう。(コピペでも可)
var sheet = SpreadsheetApp.getActiveSheet()
sheet.getRange(1, 1).setValue("テスト")
実際に書くとこんな感じ

解説すると
まずアクティブシートを取得するSpreadsheetApp.getActiveSheet()を「sheet」という変数に代入します。
そして「sheet.getRange(1, 1).setValue("テスト")」でセルA1に「テスト」という文字列を表示させています。
getRange(1, 1)の部分はセルを選択していてgetRange(行, 列)といった書き方になります。
setValue("テスト")の部分は指定したセルに文字列を表示できます。setValue("文字列")といった書き方になります。
そして「.」は「~の」といった意味合いでとらえてもらって大丈夫です。
なので「sheet.getRange(1, 1).setValue("テスト")」を翻訳すると
アクティブシート(SpreadsheetApp.getActiveSheet()を代入した変数「sheet」)のセルA1に(getRange(1, 1))「テスト」という文字列を表示(setValue("テスト"))といった感じです。
これを実行するには

この再生ボタンみたいなマークをクリックすれば実行できます。実際に押してみると。。。

から

こんな感じにちゃんと表示されます。
最後に
ここまでgoogleスプレッドシートのマクロ(Google Apps Script)の基本中の基本部分について書いてきましたが、これがマスターできれば仕事はかなり効率化できるようになります。
プログラミングの勉強にもなると思うのでGoogle Apps Scriptをどんどん使っていきましょう!!
Google Apps Scriptが学べるプログラミングスクールはこちら↓↓
