. GoogleAppsScriptの使い方・始め方|GAS初心者でも10分で始めるようになる
GoogleAppsScriptの使い方・始め方|GAS初心者でも10分で始めるようになる
GoogleAppsScriptの使い方・始め方|GAS初心者でも10分で始めるようになる

GoogleAppsScriptの使い方・始め方|GAS初心者でも10分で始めるようになる

Google Apps Script(以下GAS)をこれから勉強する場合、どのように始めればいいのか分からない人もいると思います。

そこで、この記事では以下のことを解説していきます。

・Google Apps Scriptの始め方が分かる ・Google Apps Scriptの3つの実行方法を動画で理解できる ・カンタンなタスク進捗表をGoogle Apps Scriptで使えるようになる

GASに関する知識がゼロでも、約10分で実行方法まで分かるように動画解説していきます。

目次

  • 1 Google Apps Scriptの始め方を動画で解説
  • 2 プログラムのコード全体像
  • 3 動画で伝えきれなかった部分を補足
    • 3.1 ライブラリとは何か?
    • 3.2 背景を黒に変更するアドイン
  • 4 Google Apps Scriptをもっと勉強したい人へ
    • 4.1 GASで出来ることって何を動画で解説
    • 4.2 オススメの書籍を紹介

Google Apps Scriptの始め方を動画で解説

以下、動画の目次です。

本記事で紹介したい内容は全て動画でお伝えしているので、ぜひ動画をご覧ください。

動画の目次 0:26 ステップ1|Googleアカウントでログイン(Googleアカウントがない場合は、アカウントを作成する)

1:06 ステップ2|Googleスプレッドシートを起動する

1:32 ステップ3|スクリプトエディタを起動する

1:55 ステップ4|背景色を黒にする(実施してもしなくてもOK) https://chrome.google.com/webstore/detail/appsscript-color/ciggahcpieccaejjdpkllokejakhkome

3:10 スプレッドシートに情報を入力していく

4:18 Google Apps Scriptのプログラムを入れる(プログラムは以下のウェブページで公開)

4:44 ステップ5|動画内で紹介しているプログラムを使うときの3つの注意点  4:48 注意点1|ライブラリ設定をする   MHMchiX6c1bwSqGM1PZiW_PxhMjh3Sh48 Moment.jsを使うためのライブラリキーで使用可能    5:47 注意点2|スプレッドシートのIDを変更する

 6:08 注意点3|スプレッドシートのシート名に注意する

6:51 ステップ6| Authorization requiredが出るので、許可を確認

7:36 ステップ7|プログラムを実行する3つの方法  7:36 実行方法1|実行ボタンでプログラムを実行

 7:41 実行方法2|ボタンクリックでプログラムを実行

 8:57 実行方法3|トリガー設定して定期実行

プログラムのコード全体像

プログラムの概要 コード0|プロシージャ名(の設定) コード1|スプレッドシート指定 コード2|最終行を取得 コード3|日付を取得(15日前) コード4|日付を取得(5日前) コード5|開始行の設定 コード6|前回の進捗表をリセットする コード7|シート1の進捗状況を1行ずつ取得

GetData JavaScript //*1:MHMchiX6c1bwSqGM1PZiW_PxhMjh3Sh48 Moment.jsを使うためのライブラリキーで使用可能 //コード0|プロシージャ名 function myShinchoku() { //コード1|スプレッドシート指定 var spreadsheet = SpreadsheetApp.openById('1kGWkBTESt6GjuOF47Yp_e4RoxXBnck-xPOrTVryjlaA'); var sheet1 = spreadsheet.getSheetByName('シート1'); var sheet2 = spreadsheet.getSheetByName('シート2'); //コード2|最終行を取得 var Lastrow1 = sheet1.getLastRow(); var Lastrow2 = sheet2.getLastRow(); //コード3|日付を取得(15日前) var Today = Moment.moment(new Date());//*1 var d1 = sheet2.getRange(2, 2).getValue(); var d1_date = Today.add(d1, 'd').format();//*1 //コード4|日付を取得(5日前) Today = Moment.moment(new Date());//*1 var d2 = sheet2.getRange(3, 2).getValue(); var d2_date = Today.add(d2, 'd').format();//*1 //コード5|開始行の設定 var j = 6; //コード6|前回の進捗表をリセットする if(Lastrow2 >= 6){ sheet2.getRange(6, 1, Lastrow2, 6).clear(); } //コード7|シート1の進捗状況を1行ずつ取得 for(var i = 2; i <= Lastrow1; i++) { if(sheet1.getRange(i, 4).getValue()!=='完了'){ var Kigen = Moment.moment(sheet1.getRange(i, 5).getValue()).format();//*1 Logger.log(Kigen) //コード8|進捗が迫っているタスクをシート2に転記 if(Moment.moment(d1_date).isAfter(Kigen)){//*1 var range = sheet1.getRange(i, 1, 1, 6).getValues(); var myRange=sheet2.getRange(j, 1, 1, 6) myRange.setValues(range) myRange.setBackground("#FFFF00");//黄色 if(Moment.moment(d2_date).isAfter(Kigen)){ //*1 myRange.setBackground("#FF0000");//赤色 } j=j+1; } } } } 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 //*1:MHMchiX6c1bwSqGM1PZiW_PxhMjh3Sh48 Moment.jsを使うためのライブラリキーで使用可能//コード0|プロシージャ名 function myShinchoku() {       //コード1|スプレッドシート指定  var spreadsheet = SpreadsheetApp.openById('1kGWkBTESt6GjuOF47Yp_e4RoxXBnck-xPOrTVryjlaA');  var sheet1 = spreadsheet.getSheetByName('シート1');  var sheet2 = spreadsheet.getSheetByName('シート2');      //コード2|最終行を取得  var Lastrow1 = sheet1.getLastRow();  var Lastrow2 = sheet2.getLastRow();    //コード3|日付を取得(15日前)  var Today = Moment.moment(new Date());//*1  var d1 = sheet2.getRange(2, 2).getValue();  var d1_date = Today.add(d1, 'd').format();//*1   //コード4|日付を取得(5日前)    Today = Moment.moment(new Date());//*1  var d2 = sheet2.getRange(3, 2).getValue();  var d2_date = Today.add(d2, 'd').format();//*1   //コード5|開始行の設定  var j = 6;   //コード6|前回の進捗表をリセットする  if(Lastrow2 >= 6){     sheet2.getRange(6, 1, Lastrow2, 6).clear();  }    //コード7|シート1の進捗状況を1行ずつ取得  for(var i = 2; i <= Lastrow1; i++) {    if(sheet1.getRange(i, 4).getValue()!=='完了'){      var Kigen = Moment.moment(sheet1.getRange(i, 5).getValue()).format();//*1            Logger.log(Kigen)            //コード8|進捗が迫っているタスクをシート2に転記      if(Moment.moment(d1_date).isAfter(Kigen)){//*1                var range = sheet1.getRange(i, 1, 1, 6).getValues();        var myRange=sheet2.getRange(j, 1, 1, 6)                myRange.setValues(range)        myRange.setBackground("#FFFF00");//黄色                if(Moment.moment(d2_date).isAfter(Kigen)){ //*1          myRange.setBackground("#FF0000");//赤色          }                j=j+1;      }    }  }}

以下、カンタンに内容を説明していきます。

コード0|プロシージャ名(の設定)

GetData JavaScript function myShinchoku() { 1 function myShinchoku() {    

このプログラムの名前です。特に説明は不要かと思います。

コード1|スプレッドシート指定

GetData JavaScript var spreadsheet = SpreadsheetApp.openById('1kGWkBTESt6GjuOF47Yp_e4RoxXBnck-xPOrTVryjlaA'); var sheet1 = spreadsheet.getSheetByName('シート1'); var sheet2 = spreadsheet.getSheetByName('シート2'); 123   var spreadsheet = SpreadsheetApp.openById('1kGWkBTESt6GjuOF47Yp_e4RoxXBnck-xPOrTVryjlaA');  var sheet1 = spreadsheet.getSheetByName('シート1');  var sheet2 = spreadsheet.getSheetByName('シート2');

1行目

IDを使って、スプレッドシートを指定しています。今回動画で紹介しているスプレッドシートのIDは「1kGWkBTESt6GjuOF47Yp_e4RoxXBnck-xPOrTVryjlaA」です。

もし使用する場合は、ご自身のスプレッドシートのIDと変更する必要があります。

2行目と3行目

今回使用しているスプレッドシートは「シート1」と「シート2」としています。

もし使用しているスプレッドシートのシート名が「シート1」と「シート2」と異なる場合、変更する必要があります。

詳しくは動画で解説しています。

コード2|最終行を取得

GetData JavaScript var spreadsheet = SpreadsheetApp.openById('1kGWkBTESt6GjuOF47Yp_e4RoxXBnck-xPOrTVryjlaA'); var sheet1 = spreadsheet.getSheetByName('シート1'); var sheet2 = spreadsheet.getSheetByName('シート2'); 123   var spreadsheet = SpreadsheetApp.openById('1kGWkBTESt6GjuOF47Yp_e4RoxXBnck-xPOrTVryjlaA');  var sheet1 = spreadsheet.getSheetByName('シート1');  var sheet2 = spreadsheet.getSheetByName('シート2');

コード3~コード8

コード3からコード8については後日更新します。

動画で伝えきれなかった部分を補足

動画の補足をしておきます。

ライブラリとは何か?

他の人が作成した関数を利用できる仕組みです。ピンとこない人は、先人たちの知恵を借りる手段だと思っていれば問題ありません。

その仕組みを利用する上で、ライブラリキーが必要になります。

たとえば、今回使用した「Moment.js」は「MHMchiX6c1bwSqGM1PZiW_PxhMjh3Sh48」です。

そのほかにもChatworkにコメントを投稿したり、ウェブデータを取得したりする場合にライブラリキーが必要になることがあります。

なお、Google検索すると記載されているので、その都度必要なライブラリキーを調べていきます。

背景を黒に変更するアドイン

背景を黒にするアドインはこちら

Google Apps Scriptをもっと勉強したい人へ

GASで出来ることって何を動画で解説

オススメの書籍を紹介

ぜひ興味を持った方は、Google Apps Scriptを勉強を始めてみてください

📎📎📎📎📎📎📎📎📎📎