複数のCSVファイルを1つに結合するWebシステム
2021年05月13日
CSVを連結するWebシステムはこちらです
マニュアルを読まずにいきなり始めたい方は以下のボタンをクリックすると、CSV連結ツールが起動できます
CSVとはカンマ区切りのことです
CSVは日本語で「カンマ区切り」と呼ばれる形式のテキストファイルです。各データ項目(フィールド)を,(カンマ)で区切り、1レコードを改行で区切るシンプルなファイルです。 実際に書くとしたのようになります
名前,性別,年齢
上田,男,34
武田,女,30
橋本,男,23
列方向も注目です。各行の1項目目には「名前」が来なければいけません。同様に2項目目は「性別」3項目目には年齢が入ります。
縦列にきちんと整列されてなければ正しくデータを表現できません。
エクセルなどの表計算ソフトでそのまま開くこともできます。CSVは何らかのシステムのデータを吐き出すのによく使われます。
逆に、新規のシステムにデータを取り込むためにも使ったりしますね。ようは「システム同士の粘着シール」みたいな役割を持っています。
複数のCSVファイルを1つにまとめたい。でもプログラミングはできないし・・・
複数のCSVファイルを1つにまとめたいときはCSVSCを使って下さい。無料です。
CSVファイルはただのテキストファイルです。複数のCSVファイルを1つにまとめたい場合、AからBへ末尾や先頭にデータをコピペするだけで完結です。
1点だけ注意するとすれば、名前,性別 のような項目見出し行は除外する必要があるということでしょう。
たったこれだけのことでも、面倒だと思います。そこで調べてみると、簡単にCSVを1つにまとめる手順を紹介しているサイトをたくさん見かけます。
しかしその多くは「コマンドプロンプト」や「パワーシェル」など、いわゆる「黒いあいつ」を使った手順によるものばかりでした。例えば「CSV 連結」で検索したときに出てくる上位3位は以下の通り
- 簡単に大量(複数)のtsv・csv・txtを一発で結合するたったひとつの方法
- CSVやTXTなど複数のファイルを結合してまとめる方法 Windowsのコマンドで簡単にできる!
- VBAでCSVファイルを結合(一つにまとめる)ツールを作成しました。
真っ黒い画面は使いたくないし、そもそもフィールド名が一致しない場合、前述の通りCSVは正しいデータを表せないので、破綻します。
パンがないならケーキを作ればいいじゃない。
色々探しても理想的なものに出会えないので、作りました。複数のCSVファイルを1つのCSVファイルに連結します。
必要なスキルは「マウスのドラッグ」だけです。所定のエリアにCSVファイルを複数ドラッグしてください。
あとは「ダウンロード」ボタンを押すだけで、ドラッグされたCSVの中身を連結したCSVファイルがダウンロードされます。
フィールドの並びを考慮する必要は無し
複数のCSVファイルについて、各CSVファイルのフィールドの並び順は関係ありません。例えば
A.csvの中身
名前,性別,年齢
上田,男,34
B.csvの中身
性別,年齢,名前
女,22,れいこさん
のようなデータの場合、
名前,性別,年齢
上田,男,34
れいこさん,女,22
という結果のCSVファイルが吐き出されます。なお、フィールドの並びは「名前順」です。
一方にしか存在しないフィールド名の場合
例えばA.csvが
名前,性別,年齢,住所
上田,男,34,栃木
B.csvが
性別,年齢,名前,電話番号
女,22,れいこさん,000-0000-0000
の場合はどうなるでしょう?これは次のようになります
名前,性別,年齢,住所,電話番号
上田,男,34,栃木,
れいこさん,女,22,,000-0000-0000
なんとなく想像できる挙動だと思います。ようは、あまり細かいことを気にせず、連結してくれるものです。
同じデータであればフィールド名を統一しよう
以上の仕組みから、フィールド名が1文字でも違うと別の列に書き出されてしまいます。「名前」と「なまえ」は別フィールドとして吐き出されるので、 前もってわかっている場合は、フィールド名を手直ししておいた方がきっと幸せになれます。
CSVSCはオープンソースです
本当に大したプログラムじゃないんですが、CSVSCはオープンソースです。Githubに載せています。
それとCSVの連結の過程において、データをサーバに転送することは一切行っていません。
実は連結の仕事をしているのはあなたのブラウザ自身です。合同会社サンドボックスのサーバはただそのプログラムをホスティングしているだけです。
だからデリケートなデータであっても、ご安心ください。
CSVSCを起動する
前置きが長くなりました。肝心のプログラムはここにあります。
Nipoで使える!複数グループのCSVデータを1つにまとめるツールです
CSVSCは複数のCSVファイルを、1枚のCSVファイルに連結するWebアプリです。もともと、Nipoのために作成しましたがCSVファイル全般でご利用になれます。
CSVSCは複数のCSVファイルをドラッグ&ドロップでセットし、「ダウンロード」ボタンをクリックすると1枚のCSVファイルに統合します。
CSVSCの特徴
ドラッグ操作だけで複数のCSVファイルを1つのCSVファイルに変換できるCSV連結ソフトです。
- ドラッグ&ドロップでかんたん操作
- 2件以上のCSVファイルを1つにまとめます
- 各CSVファイルのフィールド名は、並び順が異なっていても大丈夫です
- A.csvが[ 名前, 性別, 住所] B.csvが[ 性別, 住所, 名前]でもOK)
- 一方にしか存在しないフィールドがある場合でも大丈夫です
- 基本的にUTF-8の文字コードしか想定していません。Shift-JISとは相性が悪いかも?
- オープンソースです
複数のCSVファイルを1つにまとめるにはどうするか?
「CSVを1つにまとめたい」という場合、前述のようにコピーペーストをすれば簡単にできます。しかし注意しなければならないポイントとして
- 1行目の「項目見出し」をデータとしてコピーしないようにすること
- 各見出しの並び順が同じであることを確認する
- 文字コードが同じか確認する(WindowsはSHIFT-JIS、そのほかはUTF-8)
があります。
Nipoで過去の日報を出力すると、グループ内の「日報テンプレート」単位でCSVが出力できます。
ですが人数の制約などでグループを分けて運用する場合に、本来1つのCSVファイルでまとめたいのに、2つのCSVファイルに分かれてしまいます。
AグループとBグループのCSVデータを1つのCSVに連結するために、CSVSCは開発されました。