ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

Excel(エクセル)活用コミュの大量のcsvファイルの中にある、一部顧客情報だけを抽出して1枚のエクセルシートまとめる方法。

  • mixiチェック
  • このエントリーをはてなブックマークに追加
お手数ですが助けてください。
私はものすごく簡単なマクロなら使える程度のエクセル初心者です。
エクセルは2003
OSはXPです。

1日毎の売上csvファイルがあり(120近く)、その内のとある顧客だけを抽出して1つのエクセルシートにまとめなければいけません。

自分の知識では、全てのcsvファイルをエクセルで取り込み、1つ1つのファイルにフィルターにかけてコピー、まとめるシートに付け足すように貼り付けしか思いつきません。
問題として、ファイルが120近くあり途方に暮れています。

どうかよろしくお願いいたします。

コメント(24)

> Kusakabeさん
早速教えて頂きありがとうございます。

foo.csvファイルを作る方法で行えば全てが繋がった一枚のファイルになるってことだとなんとなく理解しましたが、、、

申し訳ありません。表記されてます、grep〜の作成方法をもう少し詳しく教えてくだい。

初めて聞く単語で頭が混乱しています。csvファイルに右クリック等を試しましたが、、、違いますね?
重大なミスに気づきました。

csvファイルではなく、txtファイルでした。

申し訳ございません。
>SYOUTAROUさん
grepはunix系のコマンドなので、何かソフトを入れないと使えません。
ProfessionalだとSFUとかが使えますが、Homeではそうはいきませんし、そもそも会社マシンではインストールすら許して貰えないことが多々ありますよね。

という訳で回避法を教えます。

コマンドプロンプトを開いて、csvファイルの有るところまでcdで移動し、
findstr *.csv しょうたろう > foo.csv
これで出来るはずです。

>1,2
「OSはXP」と書いてあるので、その上でMacのやり方を出すのはどうかと思いますが。
空気読む読まないの問題ではなく、トピック本文すら正しく読めていないのではありませんか?
皆さんありがとうございます。

現状教えて頂いている内容を要約するとネットで検索かけてソフトをインストールする、もしくは『コマンドプロンプト』?を開いて〜の方法ですね、、、
どうやらエクセルの機能から外れてプログラムの知識が必要みたいですね。
たびたび自分の無知ぶりが恥ずかしいです。

自分の状況を更に追記させていただきます。
現在、自宅で作業しており、諸事情によりネットはつながっていません。
ですので調べるにも携帯からしかありません。。

インストールしたのはパーソナルエディション2003です。
>>10 谷 さん
ファイルから特定の名前を抽出していないので、
トピ主さんのご要望に沿っていないような…。
(限られた状況下でしか使えないし…)
既に提示された方法で十分に実施できるように思いますし、
投稿の意図が分かりません。


>> SYOUTAROU さん
お二方にご紹介頂いたgrepやfindstrというツールは小回りの効く強力な
テキスト検索ツールですので、これを機に使いこなせるようになると
色々お仕事などが楽になるかも知れません。

[Ctrl]+[Esc]→[R]
[c]→[m]→[d]→[Enter]
[find ”しょうたろう" hoge\*.txt > foo.txt]

※hoge\*.txt の部分について
1. [find ”しょうたろう" ]まで入力して
2. とりあえずファイルをひとつマウスで選択して
3. cmd.exe の黒い画面に向かってドラッグ&ドロップすると簡単に入力できます
4. 自動で入力されたパス(ファイルのありか)を編集(hoge\選択したファイル名.txt → hoge\*.txt)

>>5 で示されている手順のままなのでお礼は >>5 に。
> Kusakabeさん
返信遅くなり、大変申し訳ございません。

1、しpへrさんの手順通りにC:Windows¥system32¥cmd.exeの画面を開きました。

2、〔C:¥Documents and Settings¥Owner>〕の横に〔find”syoutarou”〕と入力(日本語入力できないです?)。

3、検索するファイルの1つ『売上20090101.txt』を黒い画面にドラッグ&ドロップ。
C:¥Documents and Settings¥Owner>find”syoutarou””C:¥Documents and Settings¥Owner¥デスクトップ¥新しいフォルダ¥売上20090101.txt”

4、以下のように編集。
C:¥Documents and Settings¥Owner>find”syoutarou”hoge¥C:¥Documents and Settings¥Owner¥デスクトップ¥新しいフォルダ¥売上20090101.txt>foo.txt

5、〔Enter〕を押すと以下になります。
C:¥Documents and Settings¥Owner>find”syoutarou”hoge¥C:¥Documents and Settings¥Owner¥デスクトップ¥新しいフォルダ¥売上20090101.txt>foo.txt
ファイル名、ディレクトリ名、またはボリューム ラベルの構文が間違っています。

6、”を付けたままにしたり、>の前にスペース入れたりしましたが、間違っていますしか出てきません。

、、、いろいろと推測で試しましたが、自分の知識では手詰まりです。

お手数ですが、いまいちどご指南、ご指摘宜しくお願いいたします。

追記:txtファイルは全てデスクトップの新しいフォルダにあります。
ファイル名は売上20090101から売上20090630まであると考えてください。
> 谷さん
申し訳ございません。
参照しましたが、自分の浅はかな知識ではテキストエディタがどこにあるのかさっぱりわかりません。。
>>15 SYOUTAROU さん
横から失礼します。取り急ぎお悩みの点についてヒントを書いてみます。


>コマンドプロンプト上で日本語入力ができない
  → [Alt]キーを押しながら[全角/半角]キーを押すと、IMEが有効な状態に
    なり、日本語入力ができると思います。トグル動作なので日本語入力を
    オフする時も同じ操作でOKです。


>5、〔Enter〕を押すと以下になります。
>C:¥Documents and Settings¥Owner>find”syoutarou”hoge¥C:¥Documents
> and Settings¥Owner¥デスクトップ¥新しいフォルダ¥売上20090101.txt>
>foo.txt
>ファイル名、ディレクトリ名、またはボリューム ラベルの構文が間違っています。

というエラーが出る点については、多分findや対象ファイル名の前後にスペースを
入れずに記述しているせいだと思います。
コマンドラインの各要素は、スペースで区切らないと一繋がりの要素として
解釈されるせいです。

(誤) 現在フォルダ名>find"syoutarou"新しいフォルダ\売り上げ*.txt>foo.txt
(正) 現在フォルダ名>find "syoutarou" 新しいフォルダ\売り上げ*.txt > foo.txt

ただし、後ろの売り上げ*.txtと>および>とfoo.txtの間のスペースは
多分無くても大丈夫です。

コマンドライン中の売り上げ*.txtの「*」はワイルドカード文字と言われ、
「任意の文字数の任意の文字」を意味し、このパターンに当てはまる全ての
ファイルが処理対象となります。例を挙げると、上の正誤の例で書いたケースでは、
「新しいフォルダ」フォルダ中の「売り上げ.txt」、「売り上げ20090101.txt」
「売り上げ00.txt」、「売り上げあああ.txt」なども処理対象として扱われます。


分かり難かったり、却って混乱されるようであれば申し訳ありませんが、
お役に立てれば幸いです。
> 谷さん
おぉーありがとうございます!

続けて質問させてください。
1つにまとめたフォルダの中に新規でメモ帳を開きました。
しかし、PCで〔*〕←コレはどうやって入力すればよろしいでしょうか?
それと、copy(半角スペース)*.txtzenbu.txtでよろしいですか?
>SYOUTAROUさん
shift+:
テンキーが付いていればそっちでもOKです。
> Minonさん
ありがとうございます。
ご指摘通りにスペースを入れて試しました。
しかし、今度はファイルが見つかりません - なんとかかんとかです。。
> まりぬこっぽいどさん
ありがとうございます。
携帯だと*マーク(×に−)、パソコンだとЖ(×に|)になるんですね。
同じ意味で異なる表記に変換されていたこと知らなかったです。
> 皆様
本日、コマンドが分かる者に確認してもらうことができ、無事に対応することができました。
これを機に勉強になりました。
今後の業務に大きく活かせることになります。
本当にありがとうございました。

ログインすると、残り10件のコメントが見れるよ

mixiユーザー
ログインしてコメントしよう!

Excel(エクセル)活用 更新情報

Excel(エクセル)活用のメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。