概要
多数のレコードを一度に更新する必要がありますか? 1 件ずつ編集する代わりに、CSV インポートを使って既存のレコードを一括更新しましょう。 ユースケース:- 複数の連絡先の役職を更新する
- 会社情報を一括で変更する
- 新しいカスタムフィールドにデータを追加する
- 多数のレコードにわたるデータの誤りを修正する
仕組み
既存のレコードと一致する一意の識別子を含むファイルをインポートすると、Twenty は重複を作成せず、そのレコードを更新します。| 一意の識別子が… | Twenty は… |
|---|---|
| 既存のレコードに一致する | 既存のレコードを更新 |
| どのレコードにも一致しない | 新しいレコードを作成 |
| ファイルに含まれていない | 新しいレコードを作成(ID は自動生成) |
ステップ 1: 現在のデータをエクスポートする
まず、更新したいレコードをエクスポートします。- オブジェクト(連絡先、会社など)に移動します。
- 必要な列を追加 — 更新したいフィールドを表示するには Options → Fields をクリックします
- 必要に応じてフィルター — 更新対象のレコードのみに絞り込みます
- ⋮ → Export view をクリック
- CSV ファイルを保存します
なぜ最初にエクスポートするのか? エクスポートされたファイルは正しい形式で、一意の識別子を含み、インポート時に自動でマッピングされます。
エクスポートされる内容
- 現在のビューで表示されているすべての列
- レコードの一意の識別子(
id、email、domain) - 変更可能な現在のフィールド値
ステップ 2: CSV ファイルを編集する
エクスポートしたファイルを表計算アプリ(Excel、Google スプレッドシートなど)で開きます。- 一意の識別子の列は残す —
id、email、domainは削除しないでください - 変更したい列の値を更新します
- 更新が不要な列は削除(任意ですが、その方がすっきりします)
- 一意の識別子の値は変更しないでください — 変更すると Twenty が新しいレコードを作成します
例:役職の更新
エクスポートしたファイル:ステップ 3: 更新したファイルをインポートする
- 対象のオブジェクトに移動します
- ⋮ → Import records をクリック
- 編集した CSV ファイルをアップロードします
- 一意の識別子がマッピングされていることを確認 —
email、domain、またはidが正しくマッピングされているか検証します - フィールドのマッピングを確認します
- エラーがないか確認します
- Confirm をクリック
適切な一意の識別子の選び方
| オブジェクト | 推奨 | 代替 | ノート |
|---|---|---|---|
| 連絡先 | メール | id | メールアドレスは人間が読みやすい |
| 会社 | ドメイン | id | ドメインは人間が読みやすい |
| カスタムオブジェクト | 任意の一意フィールド | id | カスタムの一意フィールドを使用する |
一意の識別子は 1 つだけ使用してください。
email と id の両方をマッピングしないでください。 これは混乱やエラーの原因になります。カスタムの一意フィールドを使用する
一意としてマークされたカスタムフィールド(他システムの外部 ID など)がある場合:- そのフィールドをエクスポートとインポートに含めます
- インポート時にマッピングします
- Twenty はそのフィールドで照合します
ステップ 4: 更新内容を確認する
インポート後:- 更新されたレコードをいくつか開きます
- 変更が反映されていることを確認します
- 重複レコードが作成されていないことを確認します
ファイルに含まれていないフィールドはどうなりますか?
インポートファイルに含まれていないフィールドは変更されません。| ファイルに含まれている項目… | 結果 |
|---|---|
email、jobTitle | jobTitle のみ更新され、他のフィールドはそのままです |
email、jobTitle、phone | jobTitle と phone が更新されます |
更新と新規レコードの併用
同じインポートで既存レコードの更新と新規作成の両方が可能です。避けるべき一般的なミス
| ミス | 問題 | 結果 | 解決策 |
|---|---|---|---|
| 一意の識別子の変更 | john@acme.com を john.smith@acme.com に変更した | 更新ではなく新しいレコードが作成される | 一意の識別子は変更しない |
| 複数の一意フィールド | email と id の両方をマッピングしている | 照合の競合が発生する可能性 | 一意の識別子は 1 つだけマッピングする |
| 一意の識別子なし | ファイルには firstName、lastName、jobTitle しかない | すべての行で新しいレコードが作成される | email、domain、または id を必ず含める |
| 大文字小文字の不一致 | ファイルは John@acme.com だが、Twenty では john@acme.com になっている | 新しいレコードを作成する | 正確な値を取得するには Twenty からエクスポートする |
FAQ
一部のレコードがまだ存在しない場合はどうなりますか?
一部のレコードがまだ存在しない場合はどうなりますか?
一意の識別子が既存レコードと一致しないレコードは新規レコードとして作成されます。 これにより、同じインポートで更新と新規作成の両方が可能になります。
フィールドの値をクリア(空に)できますか?
フィールドの値をクリア(空に)できますか?
はい、CSV のセルを空白のままにしてください。 インポートにより、既存レコードのそのフィールド値がクリアされます。
インポートに含めなかったフィールドはどうなりますか?
インポートに含めなかったフィールドはどうなりますか?
インポートファイルにないフィールドは、既存レコード上で変更されません。 含めたフィールドのみが更新されます。
リレーションフィールド(Company など)を更新できますか?
リレーションフィールド(Company など)を更新できますか?
はい! リレーションの一意の識別子(例:
companyDomain)を含め、リレーションフィールドにマッピングします。 リレーションが更新されます。どのレコードが更新され、どれが作成されるかはどのようにわかりますか?
どのレコードが更新され、どれが作成されるかはどのようにわかりますか?
インポートの確認ステップで、一意の識別子の一致に基づき、更新と作成の件数を Twenty が表示します。
一括更新を元に戻せますか?
一括更新を元に戻せますか?
自動で元に戻す機能はありません。 一括更新の前に、バックアップとしてデータをエクスポートすることをお勧めします。
ベストプラクティス
- まずエクスポート — 正しい形式を確実にするため、必ずエクスポートから始める
- 更新前にバックアップ — 大量の変更を行う前にデータをエクスポートする
- 少数のレコードでテスト — 大規模に実行する前に、まず 5~10 件で更新を試す
- 人間が読みやすい識別子を使用 —
idよりもemailとdomainの方が検証しやすい - 必要な列のみを含める — 列が少ないほどエラーの可能性が減ります