• 締切済み

膨大な量のcsvファイル(ファイル数1000件以上)から条件にあったセル位置を抜き出したいです

よろしくお願いします。 手元に大量のcsvフィルがあります(ファイル数1000件以上)。 何種類かのデータが上から順に入力されていて A列にその行のデータの種類が数字で示されているような体裁になっています。 例) 1枚のcsvシートに上から「各店舗でのりんごの小売価格」「みかんの小売価格」「バナナの小売価格」がまとめられていて(価格などの情報はB列以降に記載) 「りんご」「みかん」「バナナ」という種類がA列に「1」「2」「3」のような数字で示されている感じです。 1~4行がりんごのデータ、5・6行がみかん、7~9がバナナのデータという具合です。   A B C D ------------------------------- 1|1|100 2|1|120 3|1|90 4|1|100 5|2|50 6|2|30 7|3|100 8|3|150 9|3|100 これでみかんのデータの開始と終了のセル位置を(例の場合だと「A5」「A6」) 別のファイルのシートに一覧にしたいのです。 この例だと5~6行と簡単ですが、実際のcsvファイルはデータ量が膨大なため、この間の行数は数百行にのぼります。 各ファイルともだいたいセル位置が似通っているので今までは適当にジャンプ検索して目で確認していましたが、ファイル数が多すぎて手作業でやるには作業の負荷的に厳しいです。 私は普通の事務員なので自分で何かプログラムするというのは難しいと思います。 csvやエクセルのワザ、もしくはおすすめのフリーソフトなどでこれを解決できたらと思っています。 どうかご教授ください!

みんなの回答

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.3

こんにちは。 そのCSVファイルは、「各店舗」からのデータだと思います。 >私は普通の事務員なので自分で何かプログラムするというのは難しいと思います。 部下に丸投げということもないとは思いますが、そういう1,000ファイルのデータの管理は、業者さんに作ってもらたほうがよいと思います。 プログラムがある程度の経験のある人なら、それは可能ですが、掲示板の場で、手取り足取りというにはいかないし、最終的な解決に至らないような気がしてなりません。Access がない場合なら、mdb ファイルに変換して、それをExcelのAdo などを使って取り出すことを考えますが、そんなに簡単にはいかないのは、CSVを加工しないといけないだろうと考えます。今の状態ですと、ファイル名自体が、その「各店舗名」のデータだと思うからです。 それと、質問文は、全角・半角が混じっているようですから、そういう混じったデータなのか、そういう点にも不安を覚えます。 フリーウェアでも、テキストファイル(csvもテキストファイル)の抜き出しのツールもあるのですが、可能か不可能かは、やってみないと安易なことはいえません。テキストサーチとか、文字データ検索のツールで、そういうものはありますが、 たとえば、 ---ファイル名--- 5 2 50 6 2 30 ここだけを表示するということが可能か分からないのです。正規表現検索なら可能ですが、「正規表現」って何、という話になってしまうと思います。

monjuno
質問者

お礼

ご回答ありがとうございました。 今回は別の方法を活用いたしました。 ご教授いただいた内容は別の機会に使わせていただけたらと思います。 ポイントはさしあげられませんでしたが御礼申し上げます。

  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.2

たくさんのcsvファイルがあって、この中のデータを一括で分類したいなら、コマンドプロンプトでテキストファイルの結合を利用して、その結合ファイルを並べ替えで一括処理するのが簡単です。 特定のcsvファイルではなく、フォルダ内のすべてのファイルを結合してもよいなら、ワイルドカードを利用してください。 たとえば, Cドライブのhozonフォルダに結合したいファイルを集めて,、tempフォルダに結合csvファイルを作成するなら以下のようなコマンドを実行してみてください。 copy c:\hozon\*.csv c:\temp\all.csv 参考URL http://www.relief.jp/itnote/archives/001770.php http://okwave.jp/qa356117.html

monjuno
質問者

お礼

ご回答ありがとうございました。 今回は別の方法を活用いたしました。 ご教授いただいた内容は別の機会に使わせていただけたらと思います。 ポイントはさしあげられませんでしたが御礼申し上げます。

  • rivoisu
  • ベストアンサー率36% (97/264)
回答No.1

全部のデータをデータベース(DB)に格納することをお勧めします。 どうもファイル名かファイル情報(作られた日)も含めてDBに入れたほうがよさそうですね。 具体的な利用方法が分かればもっと分かりやすいアドバイスもできると思いますが、少なくとも数百のファイルにわかれているのでは何をやるにしても面倒になると思います。

monjuno
質問者

お礼

ご回答ありがとうございました。 今回は別の方法を活用いたしました。 ご教授いただいた内容は別の機会に使わせていただけたらと思います。 ポイントはさしあげられませんでしたが御礼申し上げます。

関連するQ&A

専門家に質問してみよう