自動化厨のプログラミングメモブログ │ CODE:LIFE

Python/ExcelVBA/JavaScript/Raspberry Piなどで色んなことを自動化

GASでGoogleカレンダーの予定を取得して稼働計画表を生成する

f:id:maru0014:20201219235550p:plain

この記事は UG Advent Calendar 2020 21日目の記事です。

10月末くらいだったかに来年の稼働計画を立てる時期が来た。 今年の実績から概算で入力すればOKだから昨年作った自分用計算シートに値を入れてコピペかなぁと思っていたら、なんと今年は金額ベースの計画入力だけでなく案件ごとの時間数まで入力するフォーマットに変わっていた...。

時間数となると2021のカレンダーに合わせて祝日や曜日のズレも考慮して計算しないといけない。なんてめんどくさいんだ。 入力期限明日って言われたしちまちまやってたら間に合わない(余裕持って確認しなかったのが悪いんですけどね)。

Googleカレンダーには全部入力してあるんだしそこから自動生成してくれたらいいのに。

と思ったので作りました。ちまちまデータ入力するより楽しかったです。

  • 概要
    • 目標物確認
    • 動作イメージ
    • 完成品
  • 解説
    • 設定値取得
    • メニュー追加
    • シートの初期化と結果のセット
    • カレンダーから予定を取得して結果を配列に代入
    • 除外対象チェック
    • 経過時間数の計算
    • ピボットテーブルでの集計
  • あとがき

概要

この記事でできるようになること

  • GASでGoogleカレンダーに入っている予定を取得してスプレッドシートに出力
  • 複数のカレンダーも同時取得
  • 日付範囲を指定して取得
  • 特定の件名の予定は取得対象から除外する(正規表現)
  • 終日の予定を除外する
続きを読む

SESAMEスマートロックをMacroDrodのウィジェットボタンからAPI経由で操作する

f:id:maru0014:20201204225354p:plain

  • IFTTT対応なんだからIFTTT経由にすれば解決 のはずだった
  • PowerShellから試しにリクエストを投げてみる
    • Get Sesame list (SESAMEの一覧を取得)
    • Get Sesame status(SESAMEの状態を取得)
    • Control Sesame (SESAMEを開ける/閉める)
  • MacroDroidで実行できるようにする
    • トリガー:ウィジェットボタン
    • アクション:シェルスクリプト
    • ウィジェットボタンを配置
  • まとめ

marumo家では簡単に取り付けてアプリから解錠できる スマートロック SESAME を3年前から愛用しています。物理的な鍵を持たなくていい上に鍵の閉め忘れも無くなるので便利すぎてもうもとには戻れません。

しかし、不便な点がひとつあってアプリから開けようとする場合は

続きを読む

Powershellスクリプトを実行するだけでWindows10を自動的に最新状態にしたい

前回のWindows10Upgrade自動化スクリプト と組み合わせて通常のWindowsUpdate含め全自動でWindows10を最新状態にしたい。

ということで欲しい機能を色々まとめたものを作ったのでGithubにアップしております。

github.com

概要

続きを読む

Windows10 Feature Updateを完全自動化するPowershellスクリプト

最新バージョンのインストーラからSetup.exeを取り出して引数に /auto upgrade を渡すことでFeature Updateも実行可能だったけど、インストーラ用意するのすら面倒。

www.ka-net.org

どうにかPowerShellのコマンドだけで出来ないか調べてみていたとき、検索ワード「powershell "feature update"」でググるとそれっぽいものが見つかった。なるほど「Windows 10 更新アシスタント」をダウンロードしてきて実行すればいいのか。これなら事前準備を省略できる!ということで試してみる。

続きを読む

LINEボットにメッセージを送ったら特定メンバーに転送する アナウンスボットをGASだけで作ってみた2(GASライブラリを使う)

codelife.cafe

前回作成したメッセージ転送LINE bot 「Message Broker」ですが、GAS用のライブラリを作ってくれている方がいたので試してみました。

最終更新が約2年前なので大丈夫かなと思いましたが使えました。

github.com

ライブラリを読み込み

リソース > ライブラリ > Add a library に M9SALMELLb5j80Xc6lwp2BSX4BxE72EjN を貼り付けて追加 > 最新バージョンを選択して保存

f:id:maru0014:20201003231153p:plain

続きを読む