Microsoft Flow :便利そうなテンプレート「 Office 365 カレンダーから Google カレンダーにイベントを同期する 」を使ってみる!

[2019/10/01 追記]
残念ながらこのテンプレートは現在削除されてしまったようです。また、このテンプレートから作ったフローも現在エラーで動きません。類似したので「Office 365 の新しいイベントを Google カレンダーにコピーして通知を送信する」というテンプレートがありますが、これはイベント作成時のみで編集や削除には対応してくれません。残念!

詳細は省きますが、 Outlook の予定表に予定を登録したいけど、チェックは Google カレンダーで行いたいんです。で、その昔は Outlook 予定表 と Google カレンダーに同じ予定を2か所登録していました。そして、 Microsoft Flow に出会ってからすぐにそこの自動化に着手しました。

フローはシンプルに Outlook 予定表 に予定が登録されたら、 Google カレンダーに同じ情報が登録される仕組みです。

▼フローは超シンプル!

少し考えるとわかりますが、これだけだと予定登録はOKだけど、その後に予定を変更したり削除しても、それは Google カレンダーには反映されません。でも、僕自身が登録した予定をあまり変更したり削除しないので手間じゃない事と、全て手作業だったのが登録だけでも自動化されてそれで満足していたんです。

しかし、最近 Microsoft Flow のテンプレートを眺めていたらステキなテンプレートを発見しました!

▼「 Office 365 カレンダーから Google カレンダーにイベントを同期する」テンプレート!

なぬぅぅううう!追加だけじゃなくて更新や削除も同期されるとな!これはたとえうまく動かなかったとしても使ってみない手はない!と思い、上述の超シンプルフローは停止をし(愛着あるから削除はせぬ)、このテンプレートでフローを作成しました。では、検証してみます。

■予定を登録

▼ Outlook に以下の予定を登録します

▼ Outlook に登録されました

数分待ってフローが動いた事を確認し、 Google カレンダーをチェックします。

▼ちゃんと予定が Google カレンダーにも登録されています

と、まぁ、ここまでは僕が作った超シンプルフローと変わりません。っていうか本文にゴチャゴチャと暗号みたいなのがありますが、あれは不要だったらフローの編集から削除しても問題なさそうです。イベントIDで何かしらフローの過程で利用している可能性が高いので邪魔だけどそのまま残しておきましょう。(後日、削除して検証してみる予定)
とりあえず登録の同期は成功!

■テンプレートのフローを見てみると…

▼ぐへっ…複雑…

中身を見たけど自分ならあまり作りたくない感じの複雑さでした。テンプレート様、ありがたやぁ~!です。そして、 PowerApps もそうですが、このテンプレートのフローが勉強の材料にもなりますね。

■登録した予定の更新

先程登録した予定を更新してみます。

▼ Outlook の予定で、タイトルと終了時刻と本文を更新します

▼当然ですが Outlook は更新されました

また数分待って…チェック

▼ Google カレンダーもちゃんと更新されていました

しっかり更新も同期してくれています。しかし、過去に Microsoft Flow でスケジュールのアクションで苦労した事を思い出しました。それが「終日」です。

という事で試してみます。

■「終日」

▼更新した予定を更に「終日」にチェックして更新します

▼もちろん Outlook では想定の挙動をします

また数分待って…チェック!

▼でた~!!!想定の挙動にならない!

たしか Outlook の「終日」と Google カレンダーの「終日」は連携できなかったハズ。だとしても時間が9:00から翌日の9:00の24時間になっています。タイムゾーンの問題もあるのかな?とか色々考えますが、この課題をクリアしたところで、結果的にOutlook の「終日」にチェックされてもGoogle カレンダーの「終日」がチェックされる事はないハズ。だとしたらそこの修正に時間をかけるのは僕の中では得策ではないと判断し、そういう難点があると覚えた上で、仮に終日の予定を入れたい場合でも、業務なら9:00-18:00に設定すれば良いし、プライベートなら0:00-23:59の範囲で適度に登録すれば良いだけ。こういう諦めも肝心です。(逃げ)

▼ Outlook 側の「終日」のチェックはせずに、時間を0:00-23:59にすれば

▼ Outlook はこうなるし

▼ Google カレンダーはこうなるし、これでいいじゃない!

※ちなみに新規で予定を登録する際に「終日」にチェックをしても同じ挙動になります。

■繰り返し

[2018/10/06 追記]
予定登録時の設定で繰り返しができると思うけど、これは終日よりも厄介な印象があったのでハナっから検証から外していました(笑) その後、この記事を読んでくれた Twitter で仲良くさせていただいている Yellow11 さんが果敢に検証していただいて、どうやら繰り返した件数分フロー数を食いつぶすらしいです。これはちょっと闇が深そうなので、現時点でこのテンプレートをそのまま使う場合は、繰り返しは避けたほうが良さそうです。( Yellow11 さんありがとう!)

■登録した予定の削除

「終日」問題のインパクトでスッカリ忘れそうになったけど、最後は予定の削除です。

▼ Outlook 側で予定を削除しました

また数分待って…チェック!

▼ Google カレンダー側も予定が削除されました(このスクショ、ほぼいらないっすね)

ということで、難もありましたが片側通行の同期は一通りできるので、便利に使わせてもらいます。

■まとめ

とにかく Outlook 予定表 で予定の登録・更新・削除をすると Google カレンダーでも自動で反映されるようにしたかったらこのテンプレートはおススメですが、以下の点を注意して使う感じですね。

  • 「終日」は使わずに、9:00-18:00や0:00-23:59など時間の指定で回避。
  • 「繰り返し」は危険そうなので使わない。

■その他

▼ Google カレンダーから Outlook 予定表という方向の同期テンプレートもあります

これ両方フロー作ると…なんだか無限ループになりそうな予感がするのでやめておきます。

▼ Outlook.com のカレンダーのテンプレートもあります

これで Office 365 じゃない人でも使えますね。

とにかく便利なフローがテンプレートとして多数用意されているので、まずはテンプレートを眺めると自分の業務効率化・プライベートでも作業効率化が図れると思うので、是非お試しあれ!