CSVの取り込みと移行で本当に手が止まるのは、ファイルの書き出しでも、取り込みボタンの押し方でもありません。止まるのは、書き出した側の列と、取り込む側の列が一対一で並ばないと分かった瞬間です。氏名が姓と名に分かれている、備考の中に改行が入っている、日付が3種類の書き方で混ざっている。この食い違いをどう吸収するかを決めないまま作業を始めると、取り込んだあとに一件ずつ手で直すことになります。
この記事では、過去の回答をCSVで移すときに実際に詰まる場所を、文字コード、列の対応、改行を含む値、日付の書式、空欄の扱いの順に具体的に扱います。読み終えたときに、自分の手元のファイルで何を先に決めればよいかが分かる状態を目指します。
過去の回答をCSVで移す作業が、いま増えている理由
受付の道具を替える機会が増えた
申し込みも問い合わせも応募も、紙と電話からWebの入力に寄りました。窓口の側から見ると、これは記録が全部残るようになったということです。残った記録は、道具を替えるときに必ず「持っていくか、置いていくか」の判断を迫ります。紙の台帳なら段ボールに入れて倉庫に置けば済んだものが、Webの記録では書き出して取り込むという作業になります。
さらに、受付の道具は数年単位で見直されます。無料で始めたものが件数の増加に耐えられなくなる、担当が2人になって同じ回答を2人が見るようになる、組織のアカウント基盤が入れ替わる。理由はさまざまですが、そのたびに過去の回答をどうするかという同じ問題が出てきます。CSVはその受け渡しに使われる、事実上の共通語です。
CSVが共通語であるのは、機能が少ないからです
CSVが道具をまたいで使われているのは、優れているからではなく、決めごとが少ないからです。値をカンマで区切り、行を改行で区切る。それだけの決まりしかないため、どの道具でも書き出せて、どの道具でも読み込めます。
その少なさが、そのまま落とし穴になります。列がどういう意味を持つのか、日付をどう書くのか、空欄が「未入力」なのか「該当なし」なのかは、CSVというファイルのどこにも書かれていません。書き出した側の頭の中にしかない情報が、取り込む側に引き継がれないまま渡されます。移行で発生する手作業のほとんどは、この引き継がれなかった情報を人間が推測して埋め戻す作業です。
現場でよく聞くのは、取り込み自体は10分で終わったのに、そのあとの突き合わせと手直しに3日かかったという話です。見積もるべきなのは取り込みの時間ではなく、この後始末の時間です。
取り込む前に、CSVという形式の限界を知っておく
CSVは表ではなく、文字の並びです
表計算ソフトでCSVを開くと表に見えるため、CSVが表そのものだと思われがちですが、実体はただの文字の並びです。セルの色も、書式も、数式も、シートの分かれ方も入りません。1つのファイルに入るのは1枚ぶんの表だけで、複数のシートは表現できません。
この性質は、移行のときに2つの意味を持ちます。1つは、色分けで管理していた情報がCSVに乗らないということです。返信済みの行を黄色にする運用をしていた場合、その黄色はCSVには一切残りません。移行の前に、色が持っていた意味を列に書き起こす必要があります。もう1つは、逆に取り込む側が色を要求しないということです。状態を色ではなく値として持つ形に一度直せば、そのあとの移し替えは楽になります。
道具ごとに書き出しの流儀が違います
同じCSVという名前でも、書き出し方の流儀は道具ごとに違います。区切り文字がカンマではなくタブになっているもの、値を必ず引用符で囲むもの、空欄を空文字ではなく特定の記号で表すもの、1行目に見出しを入れないもの。どれも間違いではなく、それぞれの流儀です。
取り込む側が想定している流儀と食い違うと、列がずれます。ずれ方には特徴があり、全部の行が同じようにずれているなら区切り文字か引用符の解釈の違い、一部の行だけずれているならその行の値に区切り文字や改行が混ざっているのが原因です。この見分けだけ知っておくと、原因の切り分けが早くなります。
書き出したファイルは、いきなり表計算ソフトで開かず、まずテキストエディタで先頭の数行を見てください。1行目に何が書かれているか、値が引用符で囲まれているか、区切りが何かは、目で見れば数秒で分かります。表計算ソフトは開いた時点で値を解釈して見た目を整えてしまうため、元のファイルに何が書かれていたのかが見えなくなります。
文字コードで最初につまずく
Shift_JISとUTF-8のどちらで書き出されたかを確かめる
日本語のCSVで文字化けが起きる原因は、ほぼ文字コードの食い違いです。日本語環境で使われるのは主にUTF-8とShift_JIS(正確にはその拡張であるCP932)の2つで、書き出した側と取り込む側が違うものを想定していると化けます。
化け方には見分けがつきます。「譁�喧縺」のようにひらがなや漢字が別の漢字と記号の並びになっているときは、UTF-8のファイルをShift_JISとして読んでいます。「?」や「・」が並ぶ、あるいは半角カタカナのような崩れ方をしているときは、その逆です。どちらに転んでいるかが分かれば、開き直すだけで直ります。
直し方は、テキストエディタで文字コードを指定して開き直し、取り込む側が求める文字コードで保存し直すことです。表計算ソフトで開いて保存し直す方法は避けてください。表計算ソフトは保存のときに値の書式まで書き換えるため、文字コードは直っても日付や電話番号が別の問題を起こします。
BOMの有無で、1列目の見出しだけが化けます
UTF-8にしたのに1列目の見出しだけがおかしい、という症状に当たることがあります。これはBOMと呼ばれる、ファイルの先頭に付く数バイトの印が原因です。BOMは「このファイルはUTF-8です」と示すための目印ですが、目印を知らない道具はそれを文字として読んでしまいます。
結果として、1列目の見出しが「氏名」ではなく見えない文字の付いた「氏名」として扱われ、列の対応付けだけが外れます。値は正しいのに1列目だけ取り込めないときは、まずBOMを疑ってください。テキストエディタの保存時に「BOMなし」と「BOMあり」を切り替えて、両方試すのが早い解決です。
逆に、BOMなしのUTF-8を表計算ソフトでそのまま開くと文字化けする組み合わせもあります。取り込む道具が求めるのはBOMなし、目で確認するために開く表計算ソフトが求めるのはBOMあり、という食い違いが起きるため、確認用と取り込み用でファイルを分けておくと混乱しません。
丸数字やローマ数字は、移した先で消えることがあります
選択肢や備考に丸数字(①②③)、ローマ数字、旧字体の氏名が入っていると、文字コードによっては移した先で別の文字に置き換わったり、消えたりします。特に古いシステムから書き出したデータでは、環境依存の文字が残っていることがあります。
対処は2つです。1つは、選択肢のように自分たちで決められる値なら、移行を機に丸数字をやめて「1」「2」に直すこと。もう1つは、氏名のように直せないものについて、化けた件数を数えて一覧にし、あとから手で直すと決めておくことです。全件を目で見るのは現実的ではないので、取り込んだあとに「?」や見慣れない記号を含む行を検索して抽出する手順を決めておきます。
列の食い違いをどう吸収するか
移行作業の中心はここです。文字コードは開き直せば直りますが、列の食い違いは判断が要ります。判断を後回しにして取り込むと、あとで直せない形でデータが混ざります。
対応表を先に1枚だけ作る
作業に入る前に、書き出し側の列と取り込み側の列を左右に並べた表を1枚作ってください。表計算ソフトの新しいシートで十分です。左に古い列名、右に新しい列名、その隣に「そのまま」「加工が要る」「移さない」の3つのどれかを書きます。
この表を作る目的は2つあります。1つは、判断の抜けをなくすことです。古い側に28列あるなら、28行すべてに判断を書き込むまで作業を始めない、と決められます。もう1つは、あとから見返せる記録を残すことです。移行から半年経って「あの列はどこに入れたのか」と聞かれたときに、この1枚があれば答えられます。
対応表を作ると、たいていの場合、そのまま移せる列は全体の半分から3分の2ほどしかないことが分かります。残りの扱いを決めるのが移行の実作業です。
一対一にならない列は、3つの型に分かれます
食い違いは3つの型に整理できます。型が分かれば、対処も決まります。
1つ目は、1つの列が2つに割れる型です。古い側が「氏名」1列、新しい側が「姓」と「名」の2列というのが典型です。機械的に分けるなら空白で区切ることになりますが、空白が入っていない回答、姓と名の間に全角空白と半角空白が混在している回答、ミドルネームのある回答で必ず失敗します。無理に分けず、新しい側の「姓」に氏名の全体を入れて「名」を空欄にする、という割り切りが現実的な場面は多くあります。分けた結果が間違っているより、分けていないほうが直しやすいためです。
2つ目は、2つ以上の列が1つにまとまる型です。「電話番号1」「電話番号2」を1つの電話番号欄に入れる、「郵便番号」「住所1」「住所2」を1つの住所欄にまとめるといった場面です。まとめるときは、区切りの記号を先に決めてください。単に連結すると、あとから分け直せなくなります。改行で区切るか、読点で区切るか、どちらかに統一します。
3つ目は、新しい側にしか存在しない列の型です。担当者、対応状態、対応の期限といった、受付を回すための列は、古い側には存在しません。この型については次で扱います。
移さない列を決めるのが、作業の半分です
対応表の中で「移さない」と書ける列を増やすほど、作業は軽くなります。移さなくてよい列には、はっきりした特徴があります。
1つは、古い道具の都合で存在していた列です。回答ID、送信時刻の内部形式、集計用に自動で付いた列などがこれにあたります。新しい側にも同じ役割の列が自動で作られるため、持っていく意味はほとんどありません。ただし、古い回答IDは問い合わせ対応の照会番号として外に出している場合があるので、外に出したことがあるかどうかだけ確かめてください。出していたなら、備考欄に文字として残しておきます。
もう1つは、もう使っていない項目です。過去に一時期だけ聞いていた質問、キャンペーンのときだけ足した選択肢、途中でやめたアンケート項目。これらは新しい側に列を作る必要がありません。どうしても残したい場合は、備考欄に「旧項目:〜」の形で文字として押し込むか、書き出したCSVそのものを保管しておけば足ります。
判断の基準は「これから見返す可能性があるか」です。数える可能性があるものは列として持ち、読み返す可能性があるだけのものは文字として持ち、どちらでもないものは移しません。
新しく足す列は、過去分を空欄のままにする
担当者や対応状態のような、これから使う列を過去の回答にも埋めようとすると、移行は終わらなくなります。何百件もの過去の回答について、当時誰が担当したのか、返信したのかどうかを思い出して埋めるのは、現実的な作業ではありません。
現実的なのは、過去分は空欄のままにして、移行日以降に届いた回答からその列を使い始めることです。過去の回答は参照用の記録として置き、運用の列は新しい回答にだけ付けます。この割り切りをしておくと、移行作業は書き出しと取り込みだけで終わります。
過去分の一部だけ状態を持たせたい場合は、対応中のものだけに絞ってください。まだ返信していない、あるいはやり取りが続いている案件は、たいてい件数が少なく、担当者の頭にも残っています。締めが済んだ案件は空欄で構いません。
改行を含む値が、ファイルの行数を狂わせる
引用符の中の改行は正しいCSVですが、対応しない道具があります
問い合わせ内容、志望動機、備考のような自由記述の欄には、回答者が改行を入れています。CSVでは行の区切りも改行なので、値の中の改行と行の区切りの改行を区別する必要があります。区別のしかたは決まっていて、値の全体を引用符で囲めば、その中の改行は値の一部として扱われます。
問題は、この決まりに対応していない読み取り側があることです。単純に改行で行を切る作りになっていると、自由記述に改行が1つ入っているだけでそこから先が別の行として読まれ、以降の列が全部ずれます。1件の回答が2行にも3行にも分かれ、氏名の列に問い合わせ内容の続きが入ります。
取り込む側が対応していない場合の対処は2つです。1つは、書き出し側の設定で改行を別の記号に置き換えられるなら、そうすること。もう1つは、取り込む前に自由記述欄の改行を空白や読点に置換してしまうことです。読みやすさは落ちますが、列がずれるよりはるかにましです。置換する場合は、置換したことを対応表に書き残しておきます。
壊れているかどうかは、行数を数えれば分かります
取り込んだあとに全件を目で見る必要はありません。件数を数えれば、壊れているかどうかはすぐ分かります。
古い側の回答件数を控えておき、取り込んだあとの件数と比べてください。取り込み後のほうが多ければ、値の中の改行で行が割れています。少なければ、取り込みの途中でエラーが出て止まっているか、重複の除外が働いています。同じなら、少なくとも行の区切りは正しく解釈されています。
行数が合ったあとの確認は、列がずれていないかです。日付の列に文字が入っている行、メールアドレスの列に「@」が含まれていない行を検索すれば、ずれた行だけを抽出できます。全件を見るのではなく、明らかにおかしい形の値を探すという見方に切り替えると、確認は数分で終わります。
日付の書式は揃えないと、並び替えが狂います
3つの書き方が混ざっているのが普通です
日付は、移行で最も静かに壊れる列です。文字化けのように見た目で分からず、取り込んだ直後は正しく見えるのに、並び替えたときや期間で絞り込んだときに初めておかしいと気づきます。
書き出されたCSVの中では、日付は「2026/09/01」「2026-09-01」「2026年9月1日」「09/01/2026」のような複数の書き方で存在しえます。1つのファイルの中で混ざることもあります。手入力された欄と、システムが自動で入れた欄が別の列にあるときは、まず混ざっていると考えてください。
取り込む側が受け付ける書き方は決まっているのが普通なので、取り込む前に統一します。統一先として無難なのは「2026-09-01」の形式です。年、月、日の順で桁が揃っているため、文字として並び替えても日付の順序と一致します。時刻まで持つ場合は「2026-09-01 14:30」のように、日付との間に半角空白を1つ入れる形が広く受け付けられます。
表計算ソフトが値を勝手に書き換えます
CSVを表計算ソフトで開いて保存し直すと、日付の書式が勝手に変わることがあります。「2026-09-01」で開いたはずが、保存すると「2026/9/1」になっている、といった変化です。表計算ソフトが値を日付として解釈し、その環境の表示形式で書き戻すためです。
この書き換えは日付だけに起きるのではありません。「0312」で始まる電話番号の先頭のゼロが消える、「1-2」が日付として解釈される、長い数字が指数表記になる、といった被害も同じ原因です。移行の途中で表計算ソフトを経由するなら、全部の列を文字列として読み込む設定で開くか、そもそも経由しないことです。
確認のために開くだけなら問題は起きません。危ないのは、開いたあとに保存することです。確認用に開いたファイルは保存せずに閉じる、と決めておくだけで事故は防げます。
空欄の扱いを決めないと、あとの数え方が狂います
CSVの空欄には、少なくとも4つの意味が混ざっています。回答者が入力しなかった、その項目が任意で入力の必要がなかった、当時その項目自体が存在しなかった、システムが値を持っていたが書き出しで落ちた。この4つは、ファイルの上では区別がつきません。
区別がつかないまま取り込むと、あとの集計で困ります。「電話番号が未記入の応募者に連絡する」という作業をするとき、当時電話番号を聞いていなかった時期の回答まで一覧に出てきます。「該当なし」と「未入力」を分けたい項目については、移行の時点で値を入れておく必要があります。
実務的には、次の順で決めるのが早い方法です。まず、数える対象になる列だけを選びます。集計にも絞り込みにも使わない列の空欄は、放っておいて構いません。次に、選んだ列について、空欄が意味しうるものを書き出します。最後に、区別が必要なら「該当なし」のような値を明示的に入れて埋めます。全部の列でこれをやると終わらないので、数える列だけに限るのがコツです。
なお、空欄を「なし」や「ー」といった文字で埋めるのは、あとで面倒になります。数える側から見ると、それは空欄ではなく値が入っている状態になるためです。埋めるなら、その値が入っていることを対応表に記録し、集計のときに除外できるようにしておきます。
選択肢の値は、当時の言葉のまま入ってきます
選択式の項目は、CSVの上では選ばれた選択肢の文字がそのまま入っています。新しい側で同じ選択肢を用意していても、文字が1字でも違えば別の値として扱われます。
食い違いは、次の形でよく起きます。全角と半角の違い(「Webデザイナー」と「Webデザイナー」)、送り仮名の違い(「問合せ」と「問い合わせ」)、途中で名称を変えた選択肢(「アルバイト」を「パート・アルバイト」に変更した)、複数選択の区切り文字の違い(「A,B」と「A;B」と「A、B」)。
対処は、取り込む前に古い側の選択肢を一覧にして数えることです。表計算ソフトでその列を選び、重複を除いた一覧を作れば、実際にどんな値が入っているかが全部見えます。想定していた選択肢が5つなのに一覧に9つ出てきたなら、その差分が食い違いです。差分だけを新しい側の値に置換すれば済みます。
複数選択の項目については、区切り文字を先に決めてください。新しい側がカンマ区切りを想定しているのに、値の中にカンマが含まれる選択肢があると、CSVの区切りと混ざって列がずれます。選択肢の文字にカンマが入っている場合は、移行を機に選択肢の文言からカンマを外すのが確実です。
添付ファイルは、CSVでは移せません
書類を受け取る受付では、添付ファイルの扱いが必ず論点になります。結論として、CSVで移せるのは文字だけです。添付の列に入っているのは、古い側のストレージを指すリンクの文字列にすぎません。
このリンクは、古い側のアカウントや保存領域が生きているあいだだけ有効です。移行後に古いアカウントを解約すると、リンクは一斉に切れます。取り込んだ一覧の上ではリンクが残っているように見えるため、切れていることに気づくのは、必要になって開いたときです。
現実的な選択肢は3つです。1つは、添付ファイルを一括でダウンロードして、別の保管場所にまとめて置くこと。ファイル名に回答IDや氏名を含めておくと、あとから突き合わせられます。2つ目は、古い保存領域を参照専用で残しておくこと。費用はかかりますが、作業はいちばん軽くなります。3つ目は、保管期間内のものだけ手作業で移し、それより古いものは移さないと決めることです。件数が多いときは3つ目が現実的です。
どれを選ぶにしても、決めるのは移行の前です。取り込んだあとに古いアカウントを止めてしまうと、選択肢は1つも残りません。
個人情報を含むCSVを持ち運ぶときに気をつけること
過去の回答には、氏名、連絡先、経歴、問い合わせの内容といった個人情報が含まれます。移行の作業では、それが1つのファイルにまとまった形で担当者の手元に置かれます。普段は仕組みの中にしか存在しないデータが、この作業中だけ持ち運べる形になる、ということです。
あらかじめ本人の同意を得ないで、前条の規定により特定された利用目的の達成に必要な範囲を超えて、個人情報を取り扱ってはならない。 出典: e-gov.go.jp(個人情報の保護に関する法律 第十八条)
作業として気をつける点は具体的です。書き出したCSVを個人の端末のデスクトップに置いたまま忘れない、共有のクラウドに置く場合は閲覧できる人を限る、外部の業者に取り込みを手伝ってもらう場合は範囲を書面で決める、作業が終わったら中間ファイルを消す。この4つは、どの現場でも共通します。
取り込みの検証のために本番のデータをそのまま使うかどうかも、決めておくべきことです。動きを確かめるだけなら、氏名と連絡先を差し替えたファイルで足ります。個人情報の取り扱いについての判断は、組織の方針や取り扱う情報の内容によって変わるため、迷う場合は所管の窓口や専門家に確かめてください。個人情報保護委員会には、事業者向けの資料がまとまっています。
実際に取り込むときの手順
古い側から書き出して、原本として保管する
最初にやるのは、書き出したファイルをそのまま1つ、原本として保管することです。このファイルには一切手を加えません。加工は必ずコピーに対して行います。
移行の作業では、置換を間違えた、上書きしてしまった、どこまで直したか分からなくなった、といったことが起きます。原本が手元にあれば、いつでも最初からやり直せます。原本は、移行が終わってからも数年は保管しておいてください。古い側の契約を解約したあとで「あの時期の記録を見たい」と言われることは実際にあります。
5件だけで試す
いきなり全件を取り込まないでください。原本から先頭の5件だけを取り出した小さなファイルを作り、それで取り込みを試します。
小さいファイルで試す利点は3つあります。取り込みに失敗しても後片付けが軽いこと、どの列がどう入ったかを目で全部確認できること、そして失敗の原因が1件ずつ切り分けられることです。5件が正しく入るまで、対応表の直しと再取り込みを繰り返します。
5件で成功したら、次は自由記述に長い改行が入っている回答、選択肢が複数選ばれている回答、空欄が多い回答など、癖のある回答を10件ほど選んで試します。ここまで通れば、全件を入れて大きく崩れることはほとんどありません。
件数と抜き取りで突き合わせる
全件を取り込んだあとの確認は、全件を見るのではなく、数えることと抜き取ることの2つで行います。
数えるのは、件数と、主要な列の空欄でない件数です。古い側で氏名が入っている行が842件なら、新しい側でも842件でなければどこかで落ちています。日付ごとの件数を並べて比べると、どの時期のデータが落ちたのかまで分かります。
抜き取るのは、最初の回答、最後の回答、自由記述がいちばん長い回答、選択肢がいちばん多く選ばれている回答の4件です。この4件が正しく入っていれば、真ん中の回答も入っています。加えて、日付で並び替えたときに順序が正しいか、最も古い回答と最も新しい回答が想定どおりの日付になっているかを見ます。
切り替えの日を決めて、二重受付の期間を短くする
取り込みが終わってから新しい入口に切り替えるまでのあいだ、古い側に新しい回答が届き続けます。この期間に届いた分は、あとから差分で取り込む必要があります。
差分の取り込みは、全件の取り込みより間違いが起きやすい作業です。同じ回答を二重に取り込む、逆に取りこぼす、という事故が起きます。二重を防ぐには、受付日時で絞って書き出すこと、そして取り込んだあとにメールアドレスと受付日時の組み合わせで重複を確認することです。
いちばん確実なのは、この期間を短くすることです。取り込みを終えた翌日に入口を切り替える、あるいは受付の少ない曜日に作業をまとめる。1日で切り替えられるなら、差分は数件で済みます。
移し終えたあとに残るのは、受ける側の仕事です
CSVの取り込みが終わっても、受付の仕事は楽になりません。楽になるのは、取り込んだ先で何ができるようになったかによります。
移行を検討する窓口の相談を整理すると、詰まっている場所はいつも同じ3つです。返信したかどうかが分からない、誰が見ているのか分からない、どこまで進んだのか分からない。この3つは、回答が保存されているかどうかとは別の話です。回答を全部持っていっても、この3つが表の色分けと記憶で持たれたままなら、状況は変わりません。
だから、CSVを移す作業と同時に決めるべきなのは、状態と担当をどの列で持つかです。返信済みかどうかを表す列、担当者の列、次に何をするかを表す列。この3列を新しい側に用意して、移行日以降に届いた回答から必ず埋める運用にすると、二重返信と返し忘れは目に見えて減ります。送信されたあとの道具がそろっているかどうかで受付の道具を選ぶという判断軸は、ここから出てきます。
移行前の判断に使えるデータの見方
移行の相談を用途ごとに整理すると、そもそもCSVを移す必要があるかどうかがはっきり分かれます。分かれ目は、回答を読んで終わるのか、読んだあとに返すのかです。
読んで終わる使い方なら、過去の回答を移す理由はほとんどありません。集計が目的のアンケートや出欠の確認は、Googleフォームとの比較で整理しているとおり、無料で使えて集計の図も自動で出るため、乗り換える動機自体が生まれにくい領域です。移行を検討する前に、自分の使い方が集計型なのか受付型なのかを見分けるほうが先です。
自社サイトにフォームを置いている場合、記録の持ち方が論点になります。Contact Form 7との比較で触れているのは、送信内容がメールとしてだけ飛ぶ構成では、記録が受信箱に散るという点です。この構成から移すときは、書き出せるCSVがそもそも存在しないことがあり、受信箱のメールから一覧を作り直す作業から始まります。移行の重さが他と大きく違うのがこの型です。
組織のアカウント基盤の中で完結している場合は、Microsoft Formsとの比較で整理しているように、社内の申請や集計はその中に置いたまま、外部から受け付けるものだけを別に出すという分け方も取れます。全部を1か所に集める必要はありません。
用途別に見ると、CSVの列で詰まりやすい場面もはっきりしています。採用の応募受付は、氏名の分割、経歴の自由記述に含まれる改行、添付された書類のリンクという3つが同時に出てくるため、移行がいちばん重くなる型です。助成金・公募の受付は、募集回ごとに項目が変わるため、年度をまたぐと列そのものが揃いません。この場合は無理に1つの表にまとめず、募集回ごとに分けて持つほうが実務に合います。
一方で、イベントの申し込みや講座の受講申し込みは、項目が氏名、連絡先、参加日程程度で収まることが多く、列の食い違いは起きにくい型です。開催が終わった回のデータを移す必要があるかどうかから考えると、作業がさらに減ります。問い合わせの受付と修理・サポートの受付は、やり取りが往復するため、過去の回答よりも「まだ終わっていない案件」を漏れなく移すことが重要になります。件数は少ないので、この分だけ手で移すという判断も十分に成立します。
移行後に何ができる状態になるのかは、できることに項目ごとに整理されています。実際の画面で列や状態がどう並ぶかは動くところを見るで確かめられるので、対応表を作る前に一度見ておくと、新しい側の列名を先に確定できます。費用の見当は料金で、作業前に決めておくべきことの抜けはよくある質問で確認できます。
判断の順序をもう一度整理すると、次のようになります。第一に、過去の回答をこれから見返すのかを決める。見返さないなら、書き出したCSVを保管して終わりにできます。第二に、見返すなら、数えるのか読み返すのかを分ける。数えるものだけを列として持ち、読み返すだけのものは文字として押し込みます。第三に、移行日以降に使う状態と担当の列を用意し、過去分は空欄のままにする。この3つを先に決めておけば、列の食い違いは吸収でき、取り込みの作業は数時間で終わります。
Q1. CSVを取り込んだら日本語が化けました。どう直せばよいですか?
文字コードの食い違いが原因です。ひらがなや漢字が別の漢字の並びになっているならUTF-8のファイルをShift_JISとして読んでおり、逆なら「?」や記号が並びます。テキストエディタで文字コードを指定して開き直し、取り込む側が求める形式で保存し直してください。1列目の見出しだけおかしいときはBOMの有無を切り替えます。表計算ソフトで開いて保存し直す方法は、日付や電話番号まで書き換わるので避けます。
Q2. 古い列と新しい列が一対一で対応しません。どうすればよいですか?
先に対応表を1枚作り、古い列ごとに「そのまま」「加工が要る」「移さない」のどれかを書き込んでください。氏名を姓と名に分けるような分割は、空白の有無で必ず失敗するので、無理に分けず片方に全体を入れて割り切るほうが直しやすくなります。複数の列を1つにまとめるときは、あとから分け直せるよう区切り記号を先に決めます。
Q3. 自由記述の改行で行がずれてしまいます。回避方法はありますか?
値を引用符で囲めば中の改行は値の一部として扱われますが、取り込む側が対応していないと行が割れます。書き出し側の設定で改行を別の記号に置き換えられるならそうし、できなければ取り込む前に改行を空白や読点に置換してください。壊れているかどうかは、古い側の件数と取り込み後の件数を比べれば分かります。多くなっていれば行が割れています。
Q4. 担当者や対応状態の列は、過去の回答にも埋めるべきですか?
埋める必要はありません。何百件もの過去分について当時の担当や対応状況を思い出して入力するのは現実的ではなく、そこで作業が止まります。過去分は空欄のままにして、移行日以降に届いた回答からその列を使い始めてください。まだやり取りが続いている案件だけは件数が少ないので、その分に限って手で状態を入れておくと運用に支障が出ません。
