前置きGASとはなんぞや(私的な見解)Excelは使ったことはありますか?たぶんこの記事を見る人ならExcelはまず使ったことありますよね。Script)は、スプレッドシートに組み込まれている、JavaScriptベースのプログラミング言語です。Excelでいうマクロに相当するものですが、マクロは書き方に独自性が強くて、プログラム言語を一つ丸々覚えるくらいの学習コストがかかります。(私的感想)ですがGASならJavascriptがある程度書ければできちゃいます。GAS独自の関数やルールは少しありますが、それらを覚えるだけでif文やfor文とか変数・配列の持ち方などはJavascriptまんまでかけるのでJavaScriptが少しできる人なら学習コストが低いのが特徴です。表計算の側でできることもけっこうあり、GASと組み合わせると簡易なWebサービスみたいなこともカンタンに出来たりします。スプレッドシートはエクセルには無いWebアプリならではの機能がいろいろあります。多人数での同時編集バージョン管理Webページの内容をリアルタイムに取得Webにアップされている画像をURLで取得RSSにして配信などなど。普通にExcelよりもガッツリおすすめです。(しかも無料なので!)もちろんExcelの良さもあって、罫線や文字周りなどの書式関連などはExcelのほうが細かく出来たりします。Excelで作ったファイルを開くときはExcelじゃ無いと表示崩れることもありますね。それに今までがっつりマクロ組みまくったExcelファイルがあったりとか、クライアントがWebサービス使えなかったりなどなどもあるかもですし。Excelが全く不要になることは無いと思うのでそこは適宜何とかしながら両立させてください。スプレッドシート化していただくようご協力お願いいたします。_)m前置きが長くなりましてすみません。これよりGASの書き方や便利テクニックについて説明していきますね。GASの書き方・便利テクニックシート読み込みはじめの一歩。これをしないと始まりません。データを取得したいシートや、セルの内容を編集したいシートをまずこれで指定します。「ここのセルの値を取得したい!」はGASをやっていたら最も行う作業です。何度もセルの値を取りに行く(何度もシートのデータにアクセスしにいく)と、メッチャべらぼうにクッソ重たくなってしまいます。(GASが実行されるたびに十数秒〜1分以上待つことも)なのでセルの値を取得したい場合は、まず最初にセルの値を丸ごと全部取得してしまって配列化しておきましょう。その配列から一個一個とった方がバリ早くなります。取得そのシートのデータが入っている一番下の行数を取得します。特定のセルの値を取ります。2).setValue(cell_value);ログ出力JavaScriptのconsole.log()みたいなのの代わりです。Logger.logのカッコに変数などを突っ込むと結果がログに出ます。主な使い方バグって困ったとき。​メールを送る実行したタイミングでメールを送ることができます。msg);※初回実行時にメール送信の許可を確認されます発信元は実行を許可したGmailからになります。日付のフォーマットGoogleスプレッドシートでは日付データはそのままではめっちゃ見辛いです。みたいな感じ)なのでデータとして使いやすい形式に変換してから作業をすすめた方が効率的にも精神的にも何かとよいです。(「yyyyMMdd」など。詳しいフォーマット形式はこちらあたりご参考に)また「1週間後」などの日付計算させるのも、スプレッドシートの日付データ形式そのままでは非常にやりづらいです。日付を数値化することで、足し算引き算で日付を出せるようになるのですごくラクです。10);エスケープシーケンス「エスケープシーケンス」とは、改行とかタブなどの特殊なものを文字として表現したものです。JavaScript入門Gmail検索Gmailの検索窓でできることがスプレッドシートでもできちゃいます。GmailApp.getMessagesForThreads(myThreads);myMsgs[i][0].getSubject();myMsgs[i][0].getDate();myMsgs[i][0].getFrom();myMsgs[i][0].getPlainBody();修正した履歴の修正箇所の探し方GASのスクリプトエディタも独自にバージョン管理の機能を持っています。変更点が見づらいため、これを使うとよりグッドです。1「ファイル」→「変更履歴を表示」(もしくはCtrl+Shift+Alt+H)(Macはcommand+shift+alt+H)2変更したい日時をクリックし、表示されたソースを全コピー3差分チェック(Windows...WinMerge、Mac...CompareMerge、Webサービス...difffなど)あとがき随時更新いたします。