ChatGPTを活用したTODOリストとGoogleカレンダー連携
- 公洋 平下
- 2024年6月23日
- 読了時間: 3分
更新日:1月16日
1. はじめに
生成AIの進化により、私たちの日常的なタスク管理や生産性向上に革命が起きています。本記事では、ChatGPTを活用してTODOリスト箇条書きからスケジュール化したものを、Googleスプレッドシート表形式へ変換しGoogleカレンダーに連携させる方法を紹介します。
2. 生成AIを使ったTODOリストの作成と表形式への変換
プロンプトの設計
まず、ChatGPTに箇条書きTODOリストからスケジュール化し、Googleスプレッドシート表形式へ変換します。以下のプロンプトを使用します:
あなたは私の秘書です。以下の#今日のTODOをGoogleスプレッドシートへ登録できる#出力形式でスケジュールお願いします。
#今日のTODO (タイトル/内容/所要時間)
- ミーティング準備/プレゼン資料の最終確認/1H
- クライアントとの電話会議/新規プロジェクトの提案について/1H
- 開始は6/23 9時から
#出力形式
- 表形式
- フォーマット:開始日時,終了日時,タイトル,説明。日付も入れてください。
表形式への変換
ChatGPTが生成した情報は、以下のような表形式になります:

ここで所用時間や開始時間の内容調整をChatGPTと会話しながら調整し、スケジュールを固めます。
3. Google App Scriptスプレッドシートからカレンダーへの連携
Google App Scriptの基本
Google App Script(以降GAS)は、Googleのサービスを自動化するためのスクリプト言語です。GASを使用して、生成されたTODOリストをGoogleスプレッドシートからGoogleカレンダーへに簡単に登録できます。
GASの作成と設定
事前に次のスプレッドシートを用意

こちらのGoogleスプレッドシートを開き、「ツール」>「拡張機能」> 「Apps Script」を選択します。
新しいスクリプトファイルを作成し、以下のコードを貼り付けます。
function myFunction() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var startRow = 2
for(let row=startRow;row<20;row++){
var startDate = sheet.getRange(row,1).getValue();//開始
var endDate = sheet.getRange(row,2).getValue();//終了
var title = sheet.getRange(row,3).getValue();//タイトル
var setumei = sheet.getRange(row,4).getValue();//説明
var defaultCalender = CalendarApp.getDefaultCalendar();//デフォルトカレンダー
defaultCalender.createEvent(title, startDate, endDate,{description:setumei});
}
}
このスクリプトを保存し、実行ボタンを押すと、権限が求められるので必要な権限を付与します。
トリガーを以下のように設定し保存します。
実行する関数:myFunction
イベントのソース:スプレッドシートから
イベントの種類:変更時

4. Googleカレンダーとの自動連携
カレンダー連携の利点
タスクの視覚化:TODOリストをカレンダー形式で確認できます。
リマインダー機能:カレンダーのリマインダー機能を活用できます。
時間管理の改善:予定の重複や空き時間を簡単に把握できます。
スプシからカレンダーへ自動反映
スプレッドシートに作成された表を貼り付けます。

スプレッドシートの更新をトリガーに、スクリプトエディタで作成したmyFunction()が自動実行されます。
各TODOアイテムがGoogleカレンダーに自動的に追加されます。

5. 仕組み化後の使用例
生成AIにTODOリスト箇条書きからスケジュールを作成し、調整します。
生成された内容をGoogleスプレッドシートの適切な列に貼り付けます。
Googleカレンダーで今日の予定を確認します。
6. まとめ
この方法を使用することで、以下のような利点があります:
スケジュール作成の効率化:TODO箇条書きからAIによる素早いスケジュール化
データの変換:スプレッドシートへ自動変換
スケジュール設定と可視化:スプシからカレンダーとの連携による設定効率化と可視化
今回は開始と終了日時とタイトルと簡単な内容でしたが、それぞれのスケジュール化した内容の詳細な相談を、ChatGPTと話ながら進めるとよりタスクが効率化できると思います。
Comments