CSVインポート/エクスポート
FAQ管理画面の「CSVエクスポート」「CSVインポート」から、複数のFAQをまとめて登録・更新できます。既存FAQの一括見直しや、他システムからの移行時にご利用ください。CSVエクスポートはFAQの閲覧権限があれば実行できますが、CSVインポートにはFAQの編集権限が必要です。
CSVで扱えるのはカテゴリ・質問・回答だけです。FAQの削除はできず(CSVから行を削除してインポートしても既存のFAQは残ります)、ロール制限・公開期間も設定できません。新規登録したFAQは下書きとして作成され、ロール制限・公開期間は未設定になります。既存FAQを更新した場合、ロール制限・公開期間は変更前の設定が維持されます。公開までの流れは後述の「インポート後の公開への反映」を参照してください。
CSVファイルの形式
CSVは次の5列で、列の順番は固定です。1行目は見出し行「ID,カテゴリ,質問,回答,備考」として扱われ、見出し行がこれ以外のファイルは取り込みを中止します。
| 列 | 項目 | 必須 | 内容 |
|---|---|---|---|
| 1 | ID | - | 空欄なら新規登録、値があれば該当IDのFAQを更新 |
| 2 | カテゴリ | ○ | カテゴリの表示名(名前の一致で判定) |
| 3 | 質問 | ○ | 最大10,000文字 |
| 4 | 回答 | ○ | 最大100,000文字 |
| 5 | 備考 | - | インポートでは使われません。お客様の作業メモ欄として自由に使えます |
値にカンマ・改行・ダブルクォートを含む場合は、値全体をダブルクォート " で囲み、値の中のダブルクォートは "" のように2つ重ねてください。Excelなどの表計算ソフトから保存したファイルは通常この形式になっています。
文字コードはUTF-8のみ対応です。Excelで保存する場合は「CSV UTF-8(コンマ区切り)」形式を選択してください。「CSV(コンマ区切り)」形式で保存するとShift-JISとなり、文字化けやインポートエラーの原因になります。エクスポートされるファイルはBOM付きUTF-8です。
アップロードできるファイルは30MBまでです。これを超える場合はファイルを分けてインポートしてください。
ID列 - 新規登録か更新かを決める
- 空欄: 新規登録
- 値あり: 該当IDのFAQを更新
IDはエクスポートしたCSVの値をそのまま使ってください。存在しないIDや形式の異なるIDの行はスキップされます。
同じIDの行が複数あるときは、どの行の内容を採用すべきか決められないため、その行をすべてスキップし、該当のFAQは変更しません(内容が同じ行どうしでも同様です)。エラー行CSVの備考にはお互いの行番号が書かれるので、正しい内容の行を1つだけ残して再インポートしてください。既存FAQの行をコピーして別のFAQを作りたい場合は、コピーした行のID列を空欄にします。
カテゴリ列 - 名前で指定する
カテゴリはIDではなく表示名で指定します。既存のカテゴリ名と一致すればそのカテゴリに登録され、一致しない場合は同名の新しいカテゴリが自動的に作成されます。カテゴリ名は前後の空白を除いたうえで完全一致で判定するため、語中の表記ゆれ(全角/半角スペースなど)があると別のカテゴリとして作成されます。
既存FAQのカテゴリをCSVで変更することはできません(元と異なるカテゴリ名の行はスキップされます)。カテゴリの変更はFAQ管理画面の編集画面から行ってください。
エクスポート
「CSVエクスポート」ボタンから、登録済みの全FAQ(公開・下書き問わず)をCSVファイルとしてダウンロードできます。既存FAQをまとめて更新したい場合は、まずここでダウンロードしたファイルを編集元にしてください。IDやカテゴリ名を手入力すると、エラーや意図しないカテゴリの作成につながります。
行はカテゴリの表示順→FAQの表示順の順に並びます。備考列は常に空欄で出力されます。エクスポートされる質問・回答は公開中の内容のみで、未反映の下書き(FAQ承認ワークフローの申請中など)はエクスポートに含まれません。
インポート
「CSVインポート」ボタンからファイルを選択して実行します。ファイルの受け付け後、取り込みは順番に処理され、画面に進み具合(開始待ち、N / M 行、書き込み中)が表示されます。一時的なエラーや処理のやり直しが表示されることがありますが、自動で再試行されるため操作は不要です。取り込みは画面を閉じても中断されません。
完了すると次の5つの件数と、スキップした行のエラー内容が表示されます。
| 件数 | 内容 |
|---|---|
| 対象行数 | 見出し行を除いた行数。以下の4つの合計と一致します |
| 新規作成 | ID列が空欄で、新しく作成された行 |
| 更新 | 既存FAQの内容が実際に書き換わった行 |
| 変更なし | 既存FAQと内容が同じで、何も書き換えなかった行 |
| スキップ | 行ごとのエラーで取り込まなかった行 |
内容が変わっていない行
既存FAQを更新する行で、質問・回答が登録済みの内容と同じ場合は「変更なし」として数えられ、編集履歴も残りません。公開中のFAQに未反映の下書きがある場合は、その下書きと同じ内容の行も変更なしとして扱われ、下書きはそのまま保たれます。このため、エクスポートしたファイルを編集せずにそのままインポートしても、FAQの状態は変わりません。
最近のインポート
「CSVインポート」のモーダル下部に、直近10件のインポート履歴(受付日時・実行者・状態・ファイル名・件数)が表示されます。ブラウザを閉じたあとや別の端末からでも、ここから結果を確認できます。履歴は90日間保持され、スキップした行があるインポートからはあとからでもエラー行CSVをダウンロードできます。
インポート後の公開への反映
CSVでインポートしたFAQは、そのままでは公開されません。
- 新規登録したFAQは下書き状態で作成されます。公開するにはFAQ管理画面で公開操作を行ってください(FAQ承認ワークフローを有効化している場合は、承認申請・承認が必要です)。
- 公開中のFAQを更新した場合、内容はいったん下書きとして保存され、通常の編集と同様に公開操作(または承認)を行うまでエンドユーザーには反映されません。すでに未反映の下書きがある場合は質問・回答だけが書き換わり、下書きで変更していたロール制限・公開期間はそのまま保たれます。
- 下書き状態のFAQを更新した場合は、その場で内容が上書きされます。
エラーと対処法
次のエラーは行ごとに判定され、該当する行だけがスキップされます。他の行は取り込まれます。
| エラー | 原因 | 対処法 |
|---|---|---|
| カラム数が不正です(4カラム、または備考を含む5カラムが必要) | カンマや改行の数が合わず、列が5列に分かれていない | 質問・回答にカンマや改行を含む場合は、値全体をダブルクォート " で囲む |
| カテゴリが空です | カテゴリ列が空欄 | カテゴリ名を入力する |
| カテゴリ名は100文字以内で入力してください | カテゴリ名が上限を超えている | 100文字以内にする |
| 質問または回答が空です | 質問・回答のいずれかが空欄 | 両方を入力する |
| 質問は10000文字以内で入力してください | 質問が上限を超えている | 10,000文字以内にする |
| 回答は100000文字以内で入力してください | 回答が上限を超えている | 100,000文字以内にする |
| IDの形式が不正です | ID列の値がIDの形式になっていない | エクスポートしたCSVのIDをそのまま使う |
| 指定されたIDのFAQが存在しません | 該当IDのFAQが見つからない | IDを確認する。新規登録であればID列を空欄にする |
| 同じIDの行が複数あります(N行目、M行目)。このFAQは更新していません。正しい内容の行を1つだけ残してください。別のFAQとして登録する行はID列を空欄にしてください | 同じIDの行がファイル内に2行以上ある | 残す行を1つにする。別のFAQとして新規登録する行はID列を空欄にする |
| 公開中FAQのカテゴリ変更はできません。カテゴリを変更する場合は先に非公開に戻してください | 公開中FAQを異なるカテゴリ名で更新しようとした | カテゴリ列を元のまま保つ |
| FAQのカテゴリ変更はできません | 下書きFAQを異なるカテゴリ名で更新しようとした | カテゴリ列を元のまま保つ |
| 承認待ちのFAQはCSVインポートで更新できません(削除承認待ち・非公開承認待ちも同様) | 承認ワークフローで申請中のFAQを更新しようとした | ダッシュボードで申請の取り下げまたは承認処理を行ってから、再度インポートする |
エラー行を直して再インポートする
スキップした行があるときは、結果画面の「エラー行をダウンロード」からエラー行だけのCSVを取得できます。このファイルは通常のCSVと同じ5列形式で、1〜4列目には元の値がそのまま入り、備考列にスキップの理由が「【インポートエラー】理由|元の備考」の形で書かれています(元の備考が空なら「【インポートエラー】理由」だけです)。
- 列数が足りなかった行は、足りない列を空欄にして出力します。
- 列数が多すぎた行は、5列目の元の値を備考の「|」のあとに、6列目以降の値をそのまま6列目以降に残します。値を正しい列に戻し、6列目以降を削除してから再インポートしてください。直すまではスキップされ続けます。
再インポートでまたスキップされた行は、次のエラー行CSVで備考の「【インポートエラー】理由|」の部分が新しい理由に置き換わります。元の備考はそのまま残り、理由が積み重なることはありません(備考が「【インポートエラー】」で始まる場合は、最初の「|」までをエラーの理由とみなして置き換えます)。
- 「エラー行をダウンロード」でファイルを取得する
- 備考列の理由を見て1〜4列目を直す(備考列はそのままで構いません)
- 直したファイルをそのままインポートする
エラー行CSVには取り込めなかった行しか含まれないため、成功済みの行を二重に登録してしまうことがありません。元のファイルをそのまま再インポートすると、ID列が空欄の行は前回とは別のFAQとして再び作成され、重複します。
ファイル全体が取り込まれない場合
次の場合は受付の時点でインポートが中止され、理由が画面に表示されます。FAQは1件も取り込まれません。
- ファイルサイズが30MBを超えている、または文字コードがUTF-8になっていない
- ダブルクォートの開き・閉じが対応しておらず、CSVとして読めない。「CSVの形式が正しくありません(N行目付近)」と表示されるので、その行付近の値の囲み方を「CSVファイルの形式」に沿って直してください
- 見出し行が「ID,カテゴリ,質問,回答,備考」になっていない。「見出し行が正しくありません」と表示されます
- 見出し行しかない、または空のファイル。「取り込む行がありませんでした」と表示されます
- LiteプランのFAQ登録件数上限(1,000件)を超える。現在の登録件数と、インポートで新規登録される行の合計で判定します
- 同一のアプリで別のCSVインポートが実行中。「このアプリで実行中のCSVインポートがあります」と表示されます。1つのアプリで同時に実行できるインポートは1つだけです
取り込みを始めたあとで完了できなかった場合も、結果画面に理由が表示され、FAQは1件も取り込まれません(途中まで取り込まれた状態にはなりません)。「処理が長くなりすぎたため中断しました」と表示されたときはファイルを分けて、それ以外は同じファイルで再度インポートしてください。受付の結果を受け取れなかった旨が表示された場合は、「最近のインポート」に表示されていれば受付は完了しています。