- 公開日:
GASでスプレッドシートに書いた予定をGoogle カレンダーに流し込む方法
Google スプレッドシートではGoogle Apps Script(GAS)を使用することで、シート上に書いた予定をGoogle カレンダーに流し込むことが出来ます。
シート上で指定した日時や予定は勿論、シート上に作成したカレンダーと自動的に連動させることも可能です。
この記事では、GASでスプレッドシートに書いた予定をGoogle カレンダーに流し込む方法を分かりやすく紹介します。
GASでスプレッドシートに書いた予定をGoogle カレンダーに流し込む方法
GASでスプレッドシートに書いた予定をGoogle カレンダーに流し込む方法を分けて詳しく解説します。
シートに書いた予定を流し込む場合
シート上で指定した日時や予定を流し込む場合は、作成したスクリプトを実行することで実現します。
以下の記事にて、GASでシートに書いた予定をGoogle カレンダーに流し込む方法を詳しく解説しています。
シート上に書いた予定を自動で流し込む
シート上にカレンダーを作成し、シートのカレンダーに予定が書き込まれたことをトリガー(発動条件)としてGoogle カレンダーに流し込むことができます。
あらかじめGoogle カレンダーに予定を流し込むためのカレンダーを作成しています。
スプレッドシートを開き、①「拡張機能」、②「Apps Script」を順に選択します。
「新しいプロジェクト」ボタンをクリックします。
「名前を変更」をクリックします。
①「プロジェクトタイトル(例:Googleカレンダーへ流し込む)」を入力し、②「名前を変更」ボタンをクリックします。
下記のスクリプトをコピーして貼り付けます。
シートのカレンダーにある日付セルの下にあるセルが編集された時に、編集内容をGoogle カレンダーに流し込みます。
function onEdit(e) {
var sheet = e.source.getActiveSheet();
var range = e.range;
// 日付セルの下のセルに変更があった場合
if (range.getRow() > 1 && sheet.getRange(range.getRow() - 1, range.getColumn()).getValue() instanceof Date) {
var dateCell = sheet.getRange(range.getRow() - 1, range.getColumn());
var eventDate = dateCell.getValue();
var eventDescription = range.getValue();
createCalendarEvent(eventDate, eventDescription);
}
}
function createCalendarEvent(date, description) {
// カレンダーIDを設定 (ここに使用したいカレンダーのIDを入力してください)
var calendarId = 'your-calendar-id@group.calendar.google.com';
var calendar = CalendarApp.getCalendarById(calendarId);
// イベントの開始と終了時間を設定
var startTime = new Date(date);
startTime.setHours(9);
startTime.setMinutes(0);
startTime.setSeconds(0);
var endTime = new Date(date);
endTime.setHours(10);
endTime.setMinutes(0);
endTime.setSeconds(0);
// カレンダーにイベントを追加
calendar.createEvent(description, startTime, endTime);
}
新しいタブなどでGoogleのホーム画面を開きます。
①「Google アプリ」②「カレンダー」を順に選択します。
①「設定メニュー」②「設定」を順に選択します。
マイカレンダー設定にある、流し込みたいGoogle カレンダーを使用している、Google アカウント名を選択します。
カレンダーIDをCtrl+Cキーでコピーします。
GASのエディターに戻り、「calendarId」にCtrl+VキーでカレンダーIDを貼り付けます。
「プロジェクトを保存」ボタンをクリックします。
左にあるトリガーをクリックします。
「トリガーを追加」ボタンをクリックします。
①「onEdit」、②「Head」、③「スプレッドシートから」、④「編集時」をそれぞれ選択し、⑤「保存」ボタンをクリックします。
シートに戻り、カレンダーにある日付セル下のセルを編集します。
GASを使用して、Google カレンダーに自動的に予定を流し込むことが出来ました。