web-dev-qa-db-ja.com

GoogleカレンダーイベントをGoogleスプレッドシートにインポートするにはどうすればよいですか?

名前、日付/時刻、および場所を含む行が必要です。

理想的には、n時間ごと、または追加されたすべてのイベントで自動的に行われるべきです。

スクリプトソリューション スタックオーバーフロー を見つけましたが、プログラム以外でそれを行う方法はありますか?

2
maborg

this Zap from Zapier のように見えます。新しい予定があるかどうか、15分ごとにGoogleカレンダーが自動的に確認され、Googleスプレッドシートの新しい行に保存されます。

Google Calendar to Google Spreadsheet

開示者:私はこの会社の共同設立者です。しかし、私はまだそれが素晴らしい解決策だと思います。 :)

4
Wade

概要

関数 =importdata()iCalのパブリックまたはシークレットカレンダーアドレス 形式をインポートできます。

Googleシートの例 を作成しました

リンクは「.ics」で終わる必要があります

  • A2:=index(IMPORTDATA(A1),,1)

index()関数は、不要な列を削除します。通常、iCalファイルは1列にすぎません。ただし、説明が複数の列としてインポートされることがありますが、説明は気にしませんでした。

  • C2:=filter($A:$A, FIND("SUMMARY",$A:$A))

タイトルが含まれる行を検索します。

  • D2:=filter($A:$A, FIND("DTSTART",$A:$A))

開始日時を持つ行を検索します。

  • H2:=ARRAYFORMULA(SUBSTITUTE(C2:C2000,"SUMMARY:",""))

タイトルを読みやすくします。

  • I2:=ARRAYFORMULA(iferror(DATE(mid(D2:D2000,9,4),mid(D2:D2000,13,2),mid(D2:D2000,15,2))+TIME(mid(D2:D2000,18,2),mid(D2:D2000,20,2),0),""))

開始日時をフォーマットします。

フィード更新時間のヒント

ICalカレンダーは、Googleシートによってキャッシュされます。頻繁に新しいデータがロードされます。強制的に更新する場合は、URLを「https」から「http」に変更するか、またはその逆に変更できます。これは、たとえば「チェックボックス」できれいに自動化できます。

1