- ベストアンサー
エクセル97で約100ファイルをまとめて一つのファイルにしたい
ちがったファイルの中にあるシートを「移動またはコピー」で一つのファイルにコピーしています すごく手間がかかるしいったん保存して開くと、だんだん開く時間がすごくかかるようになってきました(今のところまだ約800KBなのに) このまま続けるととんでもないことになるのではないかと心配です、また、もっと簡単にコピー出来ないでしょうか 何か、いい方法があれば教えてください
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
1.新規ブックを作ります。 2.エクセルのメニューでツール-マクロ-VBEを開きます。 3.VBE画面で、メニューの挿入-標準モジュールを選び、出てきたモジュールに先のマクロをコピペします。 4.対象のブックを複数開きます。(取あえず10くらい) 5.エクセルのメニューでツール-マクロ-マクロでTestを実行します。 対象ブックに何枚のシートが含まれているか、どのシートをひとつにまとめたいのか、全部なのか、ご質問では判断出来ません。 取あえず各ブックの一番左のシート(通常はSheet1)をコピーして纏めるマクロです。 100ブックを全て一括処理出来るかは疑問です。たぶんリソース不足で落ちると思います。
その他の回答 (3)
- papayuka
- ベストアンサー率45% (1388/3066)
マクロが解かるなら、、 新規ブックの標準モジュールにコピーして、対象ブックを 全て開いてから実行します。 新規ブックに各対象ブックの一番左のシートをコピーして 行きます。 でも、100ブックを1つにまとめるのはお勧めしません。 Sub Test() Dim wb As Workbook, twb As Workbook Set twb = Workbooks.Add(xlWBATWorksheet) For Each wb In Workbooks If twb.Name <> wb.Name And _ ThisWorkbook.Name <> wb.Name Then wb.Worksheets(1).Copy after:=twb.ActiveSheet End If Next wb End Sub
補足
回答有り難うございます マクロはまだ初歩ですが、それで出来るなら少し教えてもらえないでしょうか 100ブックは、3つぐらいに分けてもいいと思います >新規ブックの標準モジュールにコピーして、対象ブックを 全て開いてから実行します。 新規ブックに各対象ブックの一番左のシートをコピーして 行きます →すいません、ここのところがはや分かりません それと、後のマクロの入力の仕方 お手数をお掛けしますが、よろしくお願いします
- wolv
- ベストアンサー率37% (376/1001)
全て同じ形式のファイルなら, 個別に 「CSV(カンマで区切られた値?)形式」で保存して, テキストファイルを結合する別のユーティリティーファイルを使って結合し, 改めてExcelで開いたほうがいいかもしれません. 100個個別に保存してからだめだと悲しいので, 2~3個ぐらいで試してみてください. そもそも,数メガのデータをエクセルで扱うのは効率が悪いかもしれないので,Excel以外の方法を考えたほうがいいかもしれないです.
補足
早速の回答ありがとうございます、今少し分からないのでもう少し教えてください >個別に 「CSV(カンマで区切られた値?)形式」で保存して, →すべて表の様式でもいいのでしょうか、もとの表に戻る? >テキストファイルを結合する別のユーティリティーファイルを使って結合し, →? 改めてExcelで開いたほうがいいかもしれません. →もとのように出来るのでしょうか? > Excel以外の方法を考えたほうがいいかもしれないです. →? 申し訳有りません、あまり詳しくないのでお手数をお掛けしますがよろしくお願いします
- nek784
- ベストアンサー率35% (145/411)
データ量が大きかったり,複雑な計算式やマクロを使っていたりするとファイル を開くだけでものずごく時間がかかります。 質問では約100ファイルを一つにしたいとありますが,これはやめた方が いいと思います。せめて20ファイルずつで5つぐらいにしてみてはどうでしょう か。
お礼
ご回答ありがとうございました
お礼
補足の回答ご無理をいいました すごいことがマクロでは出来るんですね ありがとうございました