dポイントプレゼントキャンペーン実施中!

複数のエクセルファイルにあるデータ集計をしたいのですが、どなたか教えてください。
集計したいデータは、日次や週次の販売データで、各回違うエクセルファイルにあります(例 『日時売上060707』『日時売上060708』など)。
それぞれののシート≪各参照したいシート名は同一です≫の特定セル(A1など)の値を引っ張れればOKです。
ファイルを開いて関数をあてればできるのはわかるのですが、複数ファイルを選択して一気に計算してしまう方法はないでしょうか?

A 回答 (3件)

> コード(?)で設定できそうでしょうか?


複数のファイル(シート)のデータをフィールド名と順序を固定したまま、シートに展開させることはマクロで比較的簡単にできます。

縦の並べ変えは、キーがしっかりしているほど操作しやすいです(例えば営業所別集計なら営業所コードなどがあれが区分しやすい)。
キーが無ければ事業所名でオートフィルタをかけるか、ピボット集計を使うと良いでしょう。これらはEXCELの標準の機能ですので、当然、マクロで自動化もできます。
    • good
    • 0
この回答へのお礼

ありがとうございました。
頑張ってみます。

お礼日時:2006/07/07 20:18

 VBA(マクロ)を活用すれば出来ます。



ファイルの選択は、マクロ内からしか出来ませんが。
(エクスプローラ上で、対象のエクセルのブックを反転させて、それをそのまま実行させる、とかのやり方は不可能、ということ)
    • good
    • 0
この回答へのお礼

てがかりが掴めました。ありがとうございます。

お礼日時:2006/07/07 17:18

マクロを使えば一気に開いて集計できます。

ファイル名に規則性もあり、フォーマットも統一されているようなので、コードも簡単と思われます。

マクロを使わない場合は、集計用のファイルを作って、それにリンク込みの参照式と計算式を入れておき、ファイル名が異なるものを集計する場合は、[編集]>[リンクの編集]>[リンク元の変更]で地道にいくしかないかもしれません。

この回答への補足

フォーマットは統一されていて、横(列)の項目は売上、粗利、原価 など各シートで順序の変更はないです。
縦(行)の並びは、毎日・毎週の売上高の高い営業所順に並んでいたりしますので、集計後生成されるシートには、「同一名の各シートのA列を参照して同一名称の項目を集計して多い順に並べる」という風にしなければいけません。
コード(?)で設定できそうでしょうか?

補足日時:2006/07/07 17:18
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!