投稿

ラベル(GAS)が付いた投稿を表示しています

GASをローカルで開発する

GASをローカルで開発する GASでちょくちょくツールを作ったりしますが、オンラインエディタだとバージョン管理しづらい、というかできればGitで管理したかったので、 clasp を入れてみようと思います。 設定 claspをインストール 事前に npm をインストールしておく必要があります。 clasp自体のインストールは、以下のコマンドを実行してGoogleアカウントにログインするだけ。 npm clasp clasp login 以下のような表示がされたらインストール完了のようです。 Authorization successful. Default credentials saved to: ~\.clasprc.json (C:\Users\XXXXX\.clasprc.json). スクリプトをclone 今回は、途中までオンラインエディタで作っていたスクリプトをcloneします。 clasp clone [スクリプトID] ここでスクリプトIDは、オンラインエディタでスクリプトを開いたタブのURLに表示されている https://script.google.com/d/ と /edit?(略) の間の文字列です。 実行すると、 Cloned 2 files. └─ appsscript.json └─ Main.js のようにファイルが取得されます。 これらをGitで管理するようにしましょう。 使ってみる ローカルで修正したスクリプトをpush Gitと同じ感覚でいけます。 clasp push └─ Main.js └─ appsscript.json Pushed 2 files. オンラインエディタで修正したスクリプトをpull こちらもGitと同じ。 clasp pull Cloned 2 files. └─ appsscript.json └─ Main.js 参考情報 以下を参考にさせていただきました。 GAS用のCLIツール clasp を使ってGASをローカルで開発して実行するの巻。 Written with StackEdit .

WindowsからOmnifocusに複数タスクを一括登録する

イメージ
WindowsからOmniFocusに複数タスクを一括登録する 普段のタスク管理はiPhone/iPadのOmniFocusを使っています (OmniFocusならMac使えばいいんでしょうが) 。 普段の思いつきタスクなんかを追加する分にはアプリからの入力でも不自由を感じませんが、勉強とかで沢山のタスク(参考書の「§〇ー〇を読む」とか)をチマチマ追加するのが面倒で、まとめて放り込みたかったので Mail Drop とGASを使って試してみました。 準備 Mail Dropのアドレスを取得 Omni Sync Serverの 管理ページ を開き、 ADD AN ADDRESS ボタンを押すと、下側にMail Drop用のアドレスが表示されます(赤枠)。 このアドレスがMail Dropの送信先アドレスになります。 やってみる スプレッドシートにタスクを書き出す Googleドライブから新規のスプレッドシートを開いて、タスクをセルに入れていきます。 参考書の場合は、 このように 目次が掲載されているページを探すと楽です。 Mail Dropではメモも追加できるので、気になることがあれば書いておきます。 GASでスクリプトを書く 構成としてはこんな感じです。 スプレッドシートのタスク範囲を配列に取得する 取得したアイテム分だけメールを送信する メールの送信は sendEmail メソッドで実行します。 実行すると(当然ですが) メール送信されます ので、送信先アドレスの設定を間違えないようご注意ください。 function myFunction() { // Mail Dropの送信先アドレス var DEST_ADR = "YOUR_MAIL_DROP_ADDRESS"; // シートを取得 var sheet = SpreadsheetApp.getActiveSheet(); // タスク範囲を取得 var items_array = sheet.getDataRange().getValues(); // アイテム数だけ繰り返し for (var i = 0; i < items_array.length; i++) { // 先頭はタ...