CSVファイルとは、コンマ区切りでデータを表現するファイル形式で、広くデータ交換に利用されています。
しかし、Excel等の表計算ソフトによる誤変換が発生することがあります。一方、XMLは階層構造を持つデータ形式で、CSVと互換性を持たせるための変換方法もあります。特にmdbファイルのデータはxml変換によって一括で扱うことが可能です。
このページでは、CSVとXMLファイルの扱い方と変換方法について解説しています。

CSVファイルとは
CSVファイルとは、項目をカンマで区切った汎用性のあるデータファイルのことです。
テキストファイルといわれることもあります。
多くの表計算ソフトや、データを取り扱うソフトには、そのソフト独自の形式とともにCSVファイルの形式に対応しているものが多くあります。
そのため、CSVファイルは異なるソフトウェアの間で互換性のあるデータとして使うことができます。
例えば、Excelで集計したデータをCSVファイルに変換して他のソフトにインポートしたり、他のソフトのファイルをCSVファイルに変換してExcelにインポートしデータの加工を行ったりすることも可能です。
csv形式のファイルはExcelで簡単に開くことができるため、Excel用のデータだと勘違いされがちですが、csvファイルはExcelでの取り扱いが簡単というだけで、専用のデータではありません。
そもそも、csvとは「Comma Separated Values」の略称で、カンマで区切られたデータのテキストファイルを意味しています。
そのため、csvファイルは様々なアプリケーションで開くことができる、そして互換性のあるデータというわけです。
先にも少し触れましたが、csvファイルはさまざまなソフトと互換性があるため、データを取り扱うcsv変換およびエクスポートできるソフトやアプリがほとんどです。
例えば年賀状を作るツールやアプリ、名刺を取り扱うソフトやアプリなどのほか、スマートホンで使用する連絡帳などのアプリも、csv形式でのエクスポートが可能です。
ただし、csv変換されたデータは先にも記述しました理由などから数字が正しく書き出しされていない場合があります。
それは、エクスポートなどでcsv変換される際に、ソフトやツール側で数値を自動的に計算し直して置き換えることがあるからです。
また、csv変換されたデータをソフトやアプリに取り込む際も、同様のトラブルが発生する場合があります。
エクセルによるCSVファイルの誤変換
csv形式のファイルをダブルクリックすると、多くの場合excel(エクセル)が立ち上がりデータが展開されます。
しかしよくチェックをすると、Excelで開かれたデータ、特に数字のデータが間違っている場合があります。
それは、csvファイルをExcelで開いた時に、数字のデータを日付などに勝手に計算してしまうからです。
住所の番地などハイフンが入っているデータなども、日付データとして変換されてしまう時があります。
また、「00001」などの文字列も「1」と表示されるなどのトラブルがあります。
そのため、csvファイルを編集する時には、フリーソフトでも構わないので、テキストエディタなどのテキストファイルを編集できるソフトで展開することをおすすめします。
windowsの場合は、特段フリーソフトを無料ダウンロードしなくても、「メモ帳」で編集することが可能です。
もしExcelでcsvデータを編集したい場合は、Excelの開くコマンドからファイル形式を「csv」ファイルにして、csvファイルを開くか、外部データの取り込みからcsvファイルを取り込むようにしましょう。
ExcelでCSVファイルを開く方法
では、csvファイルをExcelで取り扱いたい場合は、何かツールやソフト・アプリを使う必要があるのかといえば、そういったソフトやアプリは一切必要ありません。
csvファイルをExcelで取り扱う時は、「外部データの取り込み」にある「テキストファイル」で取り扱うようにしましょう。
表示されたダイアログで「テキストファイル(*.pm、*.txt、*.csv)」を指定することで、読み込みたいcsvファイルをインポートすることができるはずです。
Excel2010以前であれば、「カンマやタブなどの区切り文字」のオプションを選択し、データ区切りに使用されている記号「カンマ」を選択、それ以外の記号のチェックは外しておきます。
もしダブルクォーテーションでデータが囲まれている場合は、「文字列の引用符」にダブルクォーテーションを指定します。
続いて、データ形式を指定します。データ形式は「文字列」を選択しておくことで、先頭文字の欠落や日付への変換を防ぐことができます。
そして「完了」ボタンを押すと「データの取り込み」のダイアログが表示されるので、「OK」をクリックすれば正しいデータがインポートできます。
なお、Excelに外部データとしてcsvファイルを取り込むと、元のファイルとリンクが貼られた状態になるため、元のcsvファイルを変更することでExcelの内容も自動で変更されるようにできます。
これは、設定でリンク機能を使用するか使用しないか選ぶことができます。
CSVファイルを変換する方法
csvファイルはカンマ区切り以外の規則がないデータです。
そのため、データの受け渡しだけではなく、xml変換・mdb変換・pdf変換などの形式が違うファイルへの変換も簡単です。
ツールやソフト・アプリを用いてxml変換・mdb変換・pdf変換を行うことで、それぞれのファイル形式に誤変換が行われることなく変換することができます。
XMLファイルからCSVファイルへ変換する方法
xmlやpdfなどからcsvに変換するにはどうすれば良いでしょうか。
xmlやpdfのデータをcsv変換に一括変換するツールやフリーソフト・無料アプリも数多く存在します。
フリーソフトや無料アプリ・フリーツールをダウンロードしてcsv変換を行うと良いでしょう。
ExcelファイルからCSVファイルへ変換する方法
Excelからcsvファイルをエクスポートすると、基本的には半角カンマ区切りのデータがエクスポートされます。
エクスポートしたままのデータを、フリーソフトやフリーアプリ・ツールでxml変換・mdb変換・pdf変換をした場合、仕様によっては誤変換が行われる場合があります。
また、無料やフリーのソフトやアプリ、例えば住所録を扱ったりするソフトの中には、csv変換されたデータにダブルクォーテーションが付いていないと、番地を日付として捉えたり、日付を番地として捉えたりしてしまうソフトやアプリもあります。
こういったトラブルに対処するためにも、xml変換・mdb変換・pdf変換をする前に、ツールや無料のアプリ・ダウンロードを使ってダブルクォーテーションを追加するのがおすすめです。
もちろん、他のソフトからcsv変換されたファイルにも、無料のアプリやフリーソフトを使用しての変換が大切です。
また、xmlエディタやテキストエディタでの変換もおすすめです。
xmlエディタやテキストエディタは多くの場合、一括変換の機能を備えています。
こうしたxmlエディタやテキストエディタに備えられている、一括変換の機能を使用することで簡単にダブルクォーテーションを付加することができるのです。
もちろん、xmlエディタやテキストエディタ以外のソフトであっても一括変換できるソフトはあります。
使いやすいxmlエディタやテキストエディタがあれば別ですが、特にxmlエディタやテキストエディタにこだわりがないのであれば、人気がある一括変換ソフトなどを選ぶのも良いでしょう。
Excelからcsv変換をする時に、全てのシート変換を行いたい場合もあります。
一つ一つのシートのデータを、手作業でエクスポートしてcsv変換するのはあまりおすすめしません。
シート変換を一括変換してエクスポートしてくれる、フリーソフトやフリーのツールを使用するのが簡単でおすすめです。
また、人気のフリーアドインやフリーで公開されているマクロのテンプレートを使用して、シート変換や一括変換をするのもおすすめで簡単な方法です。
ただし、シート変換によるエクスポート時においても、文字列の扱いは注意が必要です。
全てのシート変換が終了した後に、文字列の体裁が崩れていて、もう一度シート変換をし直すとなったら、それだけで多くの手間と時間がかかってしましいます。
先に少し記述しましたが、できればダブルクォーテーションを付加してくれるフリーのツールやマクロを使用するほうが、後々色々と処理も簡単なのでおすすめです。
一方で、xml変換・mdb変換・pdf変換を行うツールやソフトも、ダブルクォーテーションを付加してくれるものがまずはおすすめです。
こうした作業については、人気のあるソフトやツールだけではなく、自分が使いやすいツールを見つけたり、自分だけのマクロを構築したりして、データの誤変換によるトラブルが起きないように気を付けるように心がけましょう。
mdbとは
csvの他にも、データを取り扱う形式として、mdbと呼ばれる形式があります。
mdbはMicrosoft社が提供しているAccessというソフトで用いられる形式です。
Accessというソフトはデータベースソストで、さまざまなデータベースを構築することができるソフトです。
csv形式のファイルであれば、Accessへ直接インポートしてmdb変換したデータベースを作成することが可能です。
もちろん、Accessからcsv変換へのエクスポートもできます。
また、Access2007以降であれば、mdbをxml変換することも可能です。
ただし、mdbからすぐにxml変換できるわけではありません。
まずはAccessなどでmdb形式のデータベースをaccdb形式に変換する必要があります。
accdb変換を行ったあとで、「mdb Converter」を用いてxml変換を行います。
この方法はxml変換だけではなく、csv変換、txt変換にも対応できます。
しかしながら、こうした方法で行われるxml変換およびcsv変換、txt変換は先頭から20行までとなっています。
mdbデータはxml変換で一括変換して活用すると便利
mdbのデータをxml変換に一括変換をするには、SQLなどによるxmlへのエクスポートが必要です。
xmlに書き出したいmdbに対してxmlエディタなどでSQL命令文を記述します。
xmlエディタとして使うソフトは、テキストエディタが簡単でおすすめです。
テキストエディタはフリーのソフトを使うのも良いですし、メモ帳でも十分です。
xmlエディタなどで記述されたSQL命令文を基に、xml上にmdbのデータをエクスポートして表示してくれるでしょう。
また、Excelやaccessに組み込まれているVBAを使用することで、mdbのデータをxmlにエクスポートする方法もあります。
xmlエディタはテキストエディタ以外にも、xmlファイルを編集しやすく作られた専用のソフトも存在します。
フリーのxmlエディタなどもありますので、人気の高いフリーのxmlエディタをダウンロードして使用してみると良いでしょう。
こうしたSQLの記述やExcelやaccessのマクロについては、例文やテンプレートがインターネット上で紹介されています。
紹介されている例文やテンプレートを参考にして、組み直しなどを行い実行してみるのがおすすめです。
反対にxmlファイルからmdb変換する方法としては、accessにxmlデータをインポートする方法がもっとも簡単といえます。
xmlデータをaccessの「インポートとリンク」機能で取り込みmdb形式で保存するだけです。
mdbファイルは扱い方次第で扱いやすくなる
mdbはファイルサイズが大きく、データを扱うのが厄介な場合があります。
そうした場合、mdbのデータ一部をmdb変換するのではなく、madのデータ全てを一括変換してファイルサイズが軽いファイル形式に変えると、扱いやすくおすすめです。
mdb変換でおすすめしたいファイル形式は、csv形式などのテキスト形式です。mdb変換であれば、フリーソフトなどを使うよりも、ExcelなどでVBAを活用したツール作成が簡単でおすすめです。
Webサイトなどを検索することで、簡単にVBAのテンプレートを無料でダウンロードすることができるでしょう。
ダウンロードしたテンプレートを加工したりして、自分専用のツールに作り変えるのがおすすめです。
もし自分でVBAツールが作成できない場合は、無料のアドインソフトがインターネットでフリーダウンロードできますので、そちらを使うのもおすすめです。