![見出し画像](https://assets.st-note.com/production/uploads/images/139537546/rectangle_large_type_2_d7108eaf9b4f09b1f14097b0da60ce31.png?width=800)
主婦(夫)向けGAS | Googleカレンダーにやることリストから自動で予定を入れる
時間がない
Googleカレンダーはお使いでしょうか。
今回の記事はGoogleカレンダーを使用されていて、もっと活用したい or 効率化したいけど何かできることないんかいなという方向けに、やることリストからGoogleカレンダーへ自動で予定を入れる方法を雑にご紹介してみます。
私は他のデジタルカレンダーをほとんど使ったことがなく公私ともにGoogleカレンダーを使っているのですが、いちいち一個ずつ予定を追加するのが面倒だったり一括で予定を入れたかったりすることがあります。
主婦(夫)はマルチタスカーです。
というわけでやることリストを作って一括で予定を追加できるようにしてみましょう!
プログラミングアレルギーに打ち勝つ心とPCが必要ですが、簡単ですので良かったら実践してみてください。
1度導入すればその後何度でも使えるのでモト取れます◎
また、未就学児以上のお子さんにも「プログラミング?やったことあるで」とドヤれます◎
どうするつもり
反映にはGoogleAppsScript(GAS)というGoogleが作ったプログラム言語を使用します。が、大丈夫です。コピペで大丈夫です。
GAS、慣れたら色々できて面白いので「GAS できること」とかで調べてみてください。LINE送ったりとかもできるみたいです。
ちなみに私土田は非エンジニアのただの主婦につき、GoogleAppsScriptだかプログラムだかコーディングだかに詳しい方は失笑でご勘弁ください。
手順1 | スプレッドシートにリストを作る
PCからGoogle Cromeのアプリを開くか、Googleのアカウントにログインして、右上のハンコ注射っぽいマークからスプレッドシート(以後スプシ)を開きます。
![](https://assets.st-note.com/img/1714841245508-D2my1VED1V.png?width=800)
1行目におもむろにタイトルを入れましょう。
今回はやること、期限(日付)、メモを入力していきます。
![](https://assets.st-note.com/img/1714843192541-JeXYjglxN7.png?width=800)
表示形式から交互の背景色を選ぶと見やすくなります。
![](https://assets.st-note.com/img/1714843404886-gZt4FJrO7l.png?width=800)
予定を追加し終えたらリストの完成です。
ここで既に疲弊してしまった方、一旦パワーナップでも取ってください。
長く寝すぎると夜寝られなくなるので注意。
今回は全て終日で予定を入れていくので期限は日付だけでOKです。
![](https://assets.st-note.com/img/1714843390309-wme3R2Zxku.png?width=800)
リストの完成です。
とお伝えした直後ですが期限とやることの列の位置が逆の方が見やすい気がしたので入れ替えました。すみません。
![](https://assets.st-note.com/img/1714844586266-IhZvfM3YfU.png?width=800)
手順2 | スクリプトをコピペ
アルファベットがいっぱい並んでいてヒエ…となりますが、なるべく見ないようにしながら下記の黒いゾーン内のコードを全選択してコピーしてください。
function myFunction() {
// ←この斜線×2のある行はメモです。
//たぶんハッシュタグみたいな感じです。
//消してもらっても大丈夫です。
//ログインしているアカウントのデフォルトのカレンダーを読み込んでいます。
const calendar = CalendarApp.getDefaultCalendar();
//AppsScriptのファイルに紐づいたスプレッドシートを読み込んでいます。
//プログラムにローマ字はあまり使用しない方がいいらしいです。
//英語わかりません。
const supushi = SpreadsheetApp.getActiveSpreadsheet();
//シートを名前で指定しています。
//シート名を変更したら、下記の('シート1')のところは('変更した名前')に変えてみてください。
const listSheet = supushi.getSheetByName('シート1'),
ls_LR = listSheet.getLastRow();
//リストのデータを取得しています。
const values = listSheet.getRange(2,1,ls_LR-1,3).getValues();
Logger.log(values);
//繰り返し処理で1件ずつ予定を追加しています。
for(let i = 0 ; i < values.length ; i++){
//リストのデータを整頓&命名
const hiduke = values[i][0],
yarukoto = values[i][1],
memo = values[i][2];
const option = {
description: memo
}
//予定を追加しています。
calendar.createAllDayEvent(yarukoto, hiduke, option);
}
}
ここからは己の精神との戦いです。
メニューバーの拡張機能からApps Scriptを選択してください。
![](https://assets.st-note.com/img/1714844984291-p2KOYXCUc6.png?width=800)
未知!なんかエイゴ書いてある!全部わからん!コワイ!!アアア
となりますが、あともうちょっとです!!
![](https://assets.st-note.com/img/1714845204516-FNOXqNrOxv.png?width=800)
マステ貼って隠しといてください
function myFunction() {
}
↑これはもう全部消しちゃいましょう。
さっぱりしたところにさっきコピーしたやつをペーストしてください。
再び戦慄が走ります。
そして戻る/進む的な矢印の横のフロッピーみたいなマークをポチしてください。
![](https://assets.st-note.com/img/1714845825228-X0kCdf6JDn.png)
やりました!
おおかた終了です!!
ではフロッピー横の▷実行をポチしてください。
![](https://assets.st-note.com/img/1714845963022-XFiRrzBWik.png?width=800)
恐ろしい!!!
これは最後の試練です。
土田の書いた不審なコードを信用できる強心臓の人のみ許可のボタンを押してください。
当てはまらないインテリジェンスなアナタは「Googleカレンダー スプシ連係」とか調べてこの記事と似た信用できる他の方の記事でコピーのところからやり直しましょう。
許可できたら、恐る恐るカレンダーを開いてみてください。
![](https://assets.st-note.com/img/1714846492578-6r6SDY08CH.png?width=800)
![](https://assets.st-note.com/img/1714846599828-n6ovoi40L7.png?width=800)
おめでとうございます!
相当な緊張感の中ここまで辿り着けたのは、ひとえにご自身との葛藤に真摯に向き合われた結果です!
もう今日は遅いのでゆっくりお休みになってください。
お目覚めの後、継続して使っていただくためにもう1ステップあります。
手順3 | ショートカットキーで何度でも
![](https://assets.st-note.com/img/1714847095184-qNL71hOt6K.png?width=800)
仕上げです。
シートに戻って拡張機能からマクロ→マクロをインポートを選択してください。
コレは恐くないです!!
関数を追加をポチってください!!
![](https://assets.st-note.com/img/1714847367436-mH3RTX631o.png?width=800)
押せたらもっぺんシートへ戻り拡張機能からマクロへ。
一番下にmyFunctionが追加されています!
これを選んだらあの頑張ってペーストしたプログラムが再び▷実行されるのです。Apps Scriptの未知なるコードはもう見なくて済みます!
さらに欲張ってショートカットキーで▷実行できるようにしてみましょう。マクロを管理を選択してください。
![](https://assets.st-note.com/img/1714847558430-TGTydShlpE.png?width=800)
右端のてんてんてんの左の四角のところ!
好きな数字を入れましょう!更新!
![](https://assets.st-note.com/img/1714848115872-xF43Wy2PR8.png?width=800)
ではみたびシートへ戻り拡張機能からマクロへ。
ショートカットキー、表示通りに押してみてください。
![](https://assets.st-note.com/img/1714848314998-TS8n7OrGsP.png?width=800)
(そしてカレンダーをそろりと開く)
見事、同じ予定が2つずつ入りました!
これは煩わしい!!
カレンダーへ送ったリストは削除することをお勧めします!
![](https://assets.st-note.com/img/1714848543831-N4zyzwZHxS.png?width=800)
いろんな条件を重ねていくとコードの内容も複雑になっていくんですけどね。
お詫び
長くなりましたが無事にできましたでしょうか。
夜中のテンションで最後(?)取り乱してしまいました。
謹んでお詫び申し上げます。
買い物リストにするとか、他いまぱっと思いつかないですけど色々応用できると思います。是非主ふのニーズで自由気ままにカスタムしてください。
主ふ層はマンパワーで無理してしまいがちな気がしたので、今回IoT的な感じでご紹介させていただきました。
めっちゃ適当ですいませんでした。
楽して楽しみましょう。
GAS、作るのに慣れればめっちゃ実用的かつめっちゃ面白いので、とにかく書いたりコピペして組み合わせたりして色々遊んでみてもらいたいです。
それでは、おやすみなさいませ!!!
この記事が気に入ったらサポートをしてみませんか?