• ベストアンサー

エクセルデータの集計

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

質問者が選んだベストアンサー

  • ベストアンサー
  • TTak
  • ベストアンサー率52% (206/389)
回答No.3

> コード(?)で設定できそうでしょうか? 複数のファイル(シート)のデータをフィールド名と順序を固定したまま、シートに展開させることはマクロで比較的簡単にできます。 縦の並べ変えは、キーがしっかりしているほど操作しやすいです(例えば営業所別集計なら営業所コードなどがあれが区分しやすい)。 キーが無ければ事業所名でオートフィルタをかけるか、ピボット集計を使うと良いでしょう。これらはEXCELの標準の機能ですので、当然、マクロで自動化もできます。

badjob
質問者

お礼

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

その他の回答 (2)

  • TK1961
  • ベストアンサー率35% (16/45)
回答No.2

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

badjob
質問者

お礼

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

  • TTak
  • ベストアンサー率52% (206/389)
回答No.1

マクロを使えば一気に開いて集計できます。ファイル名に規則性もあり、フォーマットも統一されているようなので、コードも簡単と思われます。 マクロを使わない場合は、集計用のファイルを作って、それにリンク込みの参照式と計算式を入れておき、ファイル名が異なるものを集計する場合は、[編集]>[リンクの編集]>[リンク元の変更]で地道にいくしかないかもしれません。

badjob
質問者

補足

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

関連するQ&A