メールの本文から繰り返しの部分を抽出して、一行ずつCSVファイルに変換する方法

メールの本文から繰り返しの部分を抽出して、一行ずつCSVファイルに変換する方法を紹介します。

次のような注文メールをCSVファイルに変換する場合。

商品番号:A001
注文日:2010/9/1
氏名:佐藤一郎

商品名:パソコン
金額:100000円
個数:1

商品名:プリンタ
金額:30000円
個数:1

※商品名の数は不定

D2 メール自動データベース変換ソフト」では、注文ごとに一行一注文でCSVファイルに変換することができます。
※商品数が不定の場合は、パラメータを多めに作成する必要があります。

商品番号注文日氏名商品名1金額1個数1商品名2金額2個数2
A0012010/9/1佐藤一郎パソコン1000001プリンタ300001

一方で、注文商品ごとに一行一商品でCSVファイルを作成する場合は、「D2 メール自動データベース変換ソフト」の繰り返し機能で繰り返し部分はCSVファイルにできましたが、繰り返さない部分(商品番号・注文日・氏名)はCSVファイルにできませんでした。

繰り返し部分と、繰り返しでない部分を別々にに取得することになります。

商品番号注文日氏名
A0012010/9/1佐藤一郎
商品名金額個数
パソコン1000001
プリンタ300001

今回、公開した「CSVMerge CSVファイル結合ソフト」を使用すると、別々に取得した繰り返し部分とそれ以外の部分を結合することができるようになりました。

繰り返し部分と繰り返さない部分を組み合わせて、次のようなCSVファイルを作成することができます。

商品番号注文日氏名商品名金額個数
A0012010/9/1佐藤一郎パソコン1000001
A0012010/9/1佐藤一郎プリンタ300001

このようなCSVファイルを作成する方法を紹介します。

D2の繰り返し機能を使う場合、本文は繰り返し部分しか取得できませんが、メールのヘッダーは取得することができます。

そこで、メールごとに異なるヘッダー「Message-Id:」を取得します。

Message-Id:商品番号注文日氏名
XXXXXXA0012010/9/1佐藤一郎
Message-Id:商品名金額個数
XXXXXXパソコン1000001
XXXXXXプリンタ300001

CSVMerge CSVファイル結合ソフト」を使って、この「Message-Id:」をキーとして2つのCSVファイルを結合します。

CSV結合イメージ

Message-Id:商品番号注文日氏名Message-Id:商品名金額個数
XXXXXXA0012010/9/1佐藤一郎XXXXXXパソコン1000001
XXXXXXA0012010/9/1佐藤一郎XXXXXXプリンタ300001

あとは、「nextCSV CSVファイル編集ソフト」を使って、不要な行を取り除いたり列を入れ替えたりして、CSVファイルを整えます。

商品番号注文日氏名商品名金額個数
A0012010/9/1佐藤一郎パソコン1000001
A0012010/9/1佐藤一郎プリンタ300001

D2CSVMergenextCSVはいずれも自動実行バッチファイルで作業を自動化できます。

バッチファイルのコマンドを続けて記述することで、一連の作業も自動化することができます。

D2ロゴ
CSVMergeロゴ
nextCSVロゴ

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です