Google スプレッドシートの同期
Google スプレッドシートの1つのタブとNotionの双方向同期を設定します。リンクの貼り付け、タブの選択、列のマッピング、非表示の2sync ID列の役割まで解説します
2syncを使うと、Google スプレッドシートの1つのタブが1つのNotionデータベースと同期されます。シートで行を追加または編集すると、数分以内にNotionへ届きます。Notionでページを編集すれば、セルが追従します。
タブはスプレッドシートのリンクを貼り付けて選び、各列をNotionのプロパティにマッピングして、同期方向を列ごとに決めます。
始め方
Google スプレッドシートを接続する
- Google スプレッドシート & Notion同期のオンボーディングに移動します
- Google スプレッドシートを接続をクリックします
- Googleアカウントでサインインします
- 2syncによるGoogle スプレッドシートの表示、編集、作成、削除を承認します
2syncが求めるのはスプレッドシートへのアクセスだけで、Google ドライブへのアクセスは求めません。ファイルの一覧を取得することもなく、開くのは次のステップでリンクを貼り付けたスプレッドシートのみです。
スプレッドシートを追加する
接続した直後は、タブの一覧が空になっています。これは正常な状態です。どのスプレッドシートを同期するのか、2syncはまだ知らないためです。
- Google スプレッドシートでスプレッドシートを開き、同期したいタブに切り替えます
- ブラウザのアドレスバーからリンクをコピーします
- Google スプレッドシートのリンク欄に貼り付け、スプレッドシートを追加をクリックします
2syncがそのスプレッドシートのタブをすべて一覧表示します。リンクをコピーしたときに開いていたタブは、すでに選択された状態です。別のタブをクリックすればそちらが選択されます。選べるタブは1つだけなので、前のタブの選択は解除されます。
1つのオートメーションにつき1つのタブです。同じスプレッドシートの別のタブを同期するには、もう1つオートメーションを作成し、同じリンクをもう一度貼り付けてください。
非表示のタブには非表示のチップが付きますが、同期は可能です。あとからタブを追加したり名前を変えたりした場合は、タブを更新をクリックしてください。
スプレッドシートを接続から外すにはこのスプレッドシートを削除をクリックします。そのタブを使っていたオートメーションは、再度追加するまで同期を停止します。
Notionを接続する
- Notionと接続をクリックし、アクセスを許可します
- データベースが2syncに接続されていることを確認します。データベースページで**(•••) > 接続の追加 > 2sync**をクリックします
- (•••) > リンクをコピーからデータベースリンクをコピーします
- プロンプトが表示されたらリンクを貼り付けます
Notionのプロパティ名は、列のヘッダーと同じにしておくと便利です。2syncは同じ名前のプロパティに列を自動でマッピングするため、ヘッダーが「名前」「ステータス」「期限」「金額」のシートと、その4つのプロパティを持つデータベースなら、1回のクリックで対応が揃います。
Wikiページ内のデータベースは、Notion APIの制限によりサポートされていません。
2syncはシートをどのように読み取りますか?
ヘッダー行
タブの1行目がヘッダー行で、各ヘッダーがフィールド名になります。タブの上部で行を固定している場合は、固定された最後の行がヘッダーになるため、固定ヘッダーより上にあるメモやタイトルは無視されます。
同じヘッダーを持つ列が2つある場合は、列の英字で区別されます。ヘッダーが空の列は、その英字で名前が付きます(例:列C)。
行
ヘッダーより下の行のうち、Notionのタイトルにマッピングした列に値がある行がレコードになります。タイトルのない行は、入力されるまでスキップされます。Notionで作成された新しいページは、タブの末尾に新しい行として追加されます。
1つのオートメーションで同期できるのは最大10,000行です。これを超えるとオートメーションはエラーで停止します。古い行を別のタブに移して、行数を減らしてください。
2sync ID列
初回の同期時に、2syncはタブの末尾に2sync IDという列を追加します。この列は非表示かつ保護されており、同期されたすべての行にIDが入ります。このIDが行とNotionページを結び付けているため、タブの並べ替え、行の挿入、列の移動、ヘッダーの変更をしてもリンクは失われません。
列名は英語のまま書き込まれ、翻訳されません。
2sync ID列には手を加えないでください。IDを消すと2syncはその行を新規とみなし、Notionページがもう1つ作成されます。列ごと削除するとオートメーションが一時停止します。次に今すぐ同期を実行すると列が再作成され、各行はタイトルをもとにページと再リンクされます。そのため、タイトルが変わった行や、ほかの行とタイトルが重複している行は、新しいページとして戻ってきます。
タブ内で行をコピーすると、コピーにも同じ非表示のIDが引き継がれ、その行は無視されます。列を再表示してコピー側のIDセルを消すと、新しい行として同期されます。
Notion Link列
同期設定ですべての概要の下にNotionリンクを追加をオンにすると、2syncは2sync IDのすぐ右に、表示された状態で保護されたNotion Link列を追加します。
同期されたすべての行にNotionページのURLが入るため、シートからページへ1クリックで移動できます。
列をNotionのプロパティにマッピングするには?
フィールドマッピングは、タブとNotionの間でデータがどう流れるかを制御します。各列はヘッダー名のフィールドとして表示され、列の表示形式からプロパティタイプが提案されます。タイプごとの対応先はGoogle スプレッドシートのフィールドをご覧ください。
同期方向
- 双方向同期:どちらのアプリで変更しても、もう一方が更新されます
- Notionへの一方向同期:シートの変更がNotionを更新しますが、逆は行われません
- Google スプレッドシートへの一方向同期:Notionの変更がシートを更新しますが、逆は行われません
数式の列はNotionへの一方向に固定されています。同期ステータスとオートメーション名は常にNotion向き、Google スプレッドシートでの削除トリガーは常にGoogle スプレッドシート向きです。詳細な比較については、双方向同期と一方向同期をご覧ください。
フィールドの追加
自動でマッピングされなかった列は、フィールドマッピングセクションで**+ フィールドを追加をクリックして追加します。あとからタブに追加した列は、接続パネルでタブを更新**をクリックすると表示されます。
列の名前変更と削除
ヘッダーの名前を変えてもマッピングは維持されます。2syncは列をテキストではなく内部IDで識別しているためです。
マッピング済みの列を削除すると、見つからない列の名前を示すエラーでオートメーションが一時停止します。削除を元に戻すか、マッピングからそのフィールドを外すと、同期が再開します。
どの行を同期するか選択するには?
Google スプレッドシートのオートメーションのフィルターは、Notionのプロパティに対して機能します。Notionのプロパティに条件を追加して、どのページをシートに同期するかを決めます。
シート側の条件は今のところありません。タブの一部だけを同期したい場合は、その行を専用のタブに移してください。
- フィルターセクションで、すべての条件またはいずれかの条件を選択します
- + 条件を追加をクリックし、Notionのプロパティ、演算子、値を選択します
- オートメーションを保存します
プロパティタイプごとの演算子については、フィルターの概要をご覧ください。
同期ステータスフィールドをNotionプロパティにマッピングすると、どの行が同期済み、無視、または削除済みかをすぐに確認できます。
同じ行が両方で変更されたらどうなりますか?
2syncは、前回の同期時の値を基準として、マッピング済みの列を1つずつ比較します。
- それぞれの側で別の列が変更された場合:どちらの編集も保持されます
- 2回の同期の間に同じ列が両方で変更された場合:Notionの値が優先され、セルに書き戻されます
一方向に設定した列は、何が変更されても逆方向には書き込まれません。一般的なルールは競合解決をご覧ください。
行の削除はどのように動作しますか?
初期設定では、もう一方で何も削除されません。
- シートで行を削除した場合:Notionページは残り、同期ステータスが「削除済み」になります
- Notionページを削除またはアーカイブした場合:シートの行はそのまま残ります
行のセルを空にしても削除にはなりません。非表示のIDが残っている限り、その行は空の値による更新として扱われます。
削除を双方向で同期するには、詳細設定で行の削除を許可をオンにします。以降は、行を削除するとNotionページがアーカイブされ、Notionページを削除すると行が削除されます。
このスイッチはオンボーディング中はオフになっており、あとからオートメーションのページで有効にできます。
1回の同期で同期済みの行の大部分が削除されそうな場合、2syncはオートメーションを一時停止して確認を求めます。保留中の変更を確認して再開する方法は安全制限をご覧ください。
Notionから行を削除する
Google スプレッドシートでの削除トリガーをチェックボックスまたはステータスのプロパティにマッピングします。チェックが付くと、行の削除を許可の設定に関係なく、次回の同期で該当する行が削除されます。
このフィールドをマッピングすると、すでにチェックが付いているすべての行が次回の同期で削除されます。マッピングする前に、プロパティが空であることを確認してください。
一般的なルールは削除の動作をご覧ください。
ヒントとベストプラクティス
同期頻度
- Soloプラン:5分ごとに同期
- Premiumプラン:3分ごとに同期
- Proプラン:2分ごとに同期
オートメーションの今すぐ同期をクリックすると、即時同期がトリガーされます。どちらの側にも変更がなかった場合、その実行は早期に終了し、アクティビティログには何も記録されません。
タイムゾーン
日付と時刻には、Google スプレッドシートのファイル > 設定で指定したスプレッドシートのタイムゾーンが使われます。日時のセルとNotionの日付を一致させるため、初回の同期前にご自身のタイムゾーンに設定しておいてください。
シートを整えておく
- ヘッダー行は1行目に置くか、固定しておく
- 同期するすべての行にタイトルを入れる
- Notionのセレクトにマッピングする列には、データ > データの入力規則でプルダウンを設定する
- Notionのチェックボックスにマッピングする列には、実際のチェックボックス(挿入 > チェックボックス)を挿入する
1つのタブに2つのオートメーション
2つのオートメーションで、同じタブを別々のデータベースに同期できます。すでに他のオートメーションとリンクしているNotionページ(アイテム)を除外するをオンのままにしておくと、一方のオートメーションで同期済みの行はもう一方でスキップされます。
オフにすると、すべての行が両方に同期されます。
次のステップ
関連
- Google スプレッドシートのフィールド:列タイプのリファレンス
- 同期方向とフィールドマッピング:フィールドごとのデータフロー制御
- 双方向同期と一方向同期:同期方向オプションの理解
- 競合解決:同時編集時の2syncの処理方法
- 削除の動作:行削除時の動作の理解
- 安全制限:大量削除時の自動一時停止
- デフォルト値:新しいページのNotion専用プロパティに値を入れる
- Notionプロパティタイプ:各列に適切なプロパティの選択
FAQ
複数のタブを同期できますか?
1つのオートメーションで同期できるのは1つのタブです。2つ目のオートメーションを作成し、同じスプレッドシートのリンクを貼り付けて、別のタブを選んでください。2つのオートメーションは同じNotionデータベースにも、別のデータベースにも向けられます。
接続したのにタブの一覧が空なのはなぜですか?
2syncが見えるのは、リンクを貼り付けたスプレッドシートだけです。ブラウザのアドレスバーからリンクをコピーし、Google スプレッドシートのリンク欄に貼り付けて、スプレッドシートを追加をクリックしてください。タブはすぐに表示されます。
共有されたスプレッドシートを同期できますか?
はい、編集権限があれば可能です。2syncは非表示の2sync ID列を追加するために編集権限を必要とします。閲覧のみの権限では行の読み取りはできますが、初回の同期が権限エラーで停止します。
2sync ID列は何をしていますか?
各行をNotionページと結び付けるIDを保存しています。この列は非表示かつ保護されています。消したり削除したりしないでください。列がなくなった場合は、次の今すぐ同期で再作成され、タイトルをもとに行が再リンクされます。
2syncは数式を上書きしますか?
いいえ。数式を含む列はシート側で読み取り専用となり、Notion向きにのみ同期されます。Notionで入力した等号で始まる値は、数式ではなくプレーンテキストとして書き込まれます。
ヘッダーの名前を変えるとどうなりますか?
何も壊れません。2syncは列を内部IDで識別しているため、マッピングはそのまま機能し、更新後にフィールドに新しい名前が表示されます。
日付にはどのタイムゾーンが使われますか?
Google スプレッドシートのファイル > 設定で指定したスプレッドシートのタイムゾーンです。日時のセルは、Notionに届く際にそのタイムゾーンで変換されます。
同期は即時ですか?
いいえ。2syncはプランに基づいたスケジュール(2〜5分ごと)で変更をチェックします。今すぐ同期をクリックすると即時同期がトリガーされます。