なぜ同じ形式のファイルで同じようなことをマクロで実行させているだけなのに
一つだけ立ち上げ時と再計算時に時間がかかるか教えてください。
各フォルダ(東京・神奈川・千葉・埼玉)にアクセスからエクスポートしたExcelファイル(A・B・C・D)と、それを集計する合計.xlsがあります。
合計.xlsのマクロボタンを押下することによって
A・B・C・Dが立ち上がり、それぞれが合計.xlsのsheet2~5に貼りつき、A・B・C・Dを閉じます。
合計.xlsのSheet1にはマクロボタンとSheet2~5を集計するための表があり、Sheet2~5からvlookupで数値を引っ張ってきています。
●各フォルダに入ってるファイルは同じ形です。
●フォルダ(東京・神奈川・千葉)は立ち上げもマクロ実行時も数秒で計算が完了します。
フォルダ(埼玉)だけは立ち上げ時に3分以上かかり、どこかクリックする度に再計算(これも3分以上)されてしまいます。
3分位待ってればいいのですが、なぜ(埼玉)の合計.xlsだけがそうなってしまうのか、わかる方がいらっしゃれば教えてください。
マクロ作成時、確認をしたときは他と同じでした。
今日他の人が合計.xlsを何度か強制終了したとのことですが、これが原因になったりしますか?
ちなみに他フォルダ(東京)からファイルをコピーしマクロ&関数を修正してみましたがダメでした。
フォルダ(埼玉)に問題があったりするのでしょうか?
No.5ベストアンサー
- 回答日時:
#4です。
川越市だけでやってみたらどうなるんでしょうかね?
それで遅くなるならデータがおかしいと思います。
遅くならないなら・・・Excelの盲点を突いてしまったのでしょうかね?(笑)
マイクロソフトさんが調査しないとわからないレベルの話じゃないかと。
関数で回避できるなら、運用でカバーという形で回避するべきかなと思います。
再度お返事ありがとうございます。
川越市だけで試しましたが問題はありませんでした。
また川越市、さいたま市、所沢市 と順番を変更してみましたが、所沢市のB表でNGでした。
解決した旨ご報告させていただきましたが、それでまたアドバイスをいただければと質問欄を閉じずにいました。
盲点をついてしまったのであれば仕方ない(笑)
いろいろとアドバイスありがとうございました。また助けてください♪
No.4
- 回答日時:
フォルダ(埼玉)はサーバ上のフォルダですか?アクセスするのに時間がかかりますか?
サーバ上のフォルダであれば、Cドライブなどローカルにおいて時間がかかるか試してみてはいかがでしょうか。
ローカルにおいても起動に時間がかかるのであれば、エクセルファイルがおかしいでしょう。
>ちなみに他フォルダ(東京)からファイルをコピーしマクロ&関数を修正してみましたがダメでした
とあるので、ファイルは正常な気もしますが。
書式や数式が非常に多数のセルに設定してあったりします?
これに当てはまるなら、マクロで必要なセルにだけ書式設定or数式入力することで軽くなるかもしれません。
この回答への補足
お礼が遅くなり申し訳ありませんでした。解決したので補足欄にてご報告させていただきます。
再度一からやってみようと思い、合計.xlsを作り直しました。
たとえば東京の合計.xlsは上から
中央区のA表、B表、C表
世田谷区のA表、B表、C表
江東区のA表、B表、C表
となっています。
埼玉の合計.xlsをさいたま市のA表、B表、C表をつくり保存し再起動。
そこに所沢市のA表、B表、C表を追加し保存し再起動。
という感じでだんだん増やしていったところ、川越市のA表までは良かったんですが、B表を追加したところで立ち上げ時に何分もかかるようになりました。
ファイルの大きさで見れば東京の合計.xlsの方が全然大きいのに(市名or区名が多いので表の数も多い)なぜ埼玉の合計.xlsは途中でダメになるのか結局はわかりませんでしたが、
川越市のB表以降はVLOOKUPではなく、SUMPRODUCTを使ったところ大丈夫でした。使う関数によっても違うのかな?
結局フォルダが壊れたとか、ファイルが壊れたということはなかったようで・・・色々アドバイスありがとうございました。
回答ありがとうございました。
サーバ上からデスクトップにコピーしてみましたがダメでした。
書式については多くの罫線、セルに色づけがされています。また合計.xlsのSheet1の表には全てVLOOKUPがはいっています。
ただそれは他のフォルダ(東京・神奈川・千葉)の合計.xlsも同じことなので、なぜフォルダ埼玉の合計.xlsだけがダメなのか不思議なんですが・・・
No.3
- 回答日時:
実際のファイルが分からないので、あくまでも推測の域を出ませんが・・・・
>ちなみに他フォルダ(東京)からファイルをコピーしマクロ&関数・・・・
これがどうやったのかよく判りませんが、フォルダ(埼玉)・・・ファイル埼玉?・・・をいったん別名で保存しておいて、正常に処理されるファイルをフォルダ(埼玉)・・・ファイル埼玉?・・・と名づけて同じ処理をしたらどうなりますか?
それと、四つのフォルダ(ファイル?)を同じ処理しているマクロは、Do....Loop や For....Next などで、まったく同じVBAの構文で処理しているのか?それとも別々に表記されているマクロなのか?
後者だとしたら、本当に同じ構文になっているのか?思い込みを捨てて再確認しましたか。
フォルダ(埼玉)・・・ファイル埼玉?・・・と他のフォルダ(ファイル?)ではファイルの大きさに違いはありますか?
入力sれているデータの件数をみてもそれほど差がないのに、ファイルの大きさ(プロパティで○KBとか△MBとか)に差が出ていたりしませんか?
もしそうなら、マクロ実行中に中断したり強制終了するなどした関係で不要なデータが紛れ込んでいるのかも知れません。
フォルダ(埼玉)・・・ファイル埼玉?・・を開いて、ワークシート上で CTRL + ENDキー をおしてシートの最終入力データを探してください。
それが、表示されているデータと違う(スペースか何か見えない状態かもしれません)なら、目に見えている(必要な)データ以降のセル(行・列)をいったん削除して上書き保存後に再確認してみてください。
回答ありがとうございました。
フォルダ埼玉の合計.xlsをいったん別名で保存し、フォルダ東京の合計.xlsをコピーしてきてマクロと関数を埼玉用に直してみましたがダメでした。
またマクロですが、記憶のマクロのためDo....Loop や For....Next などのVBA構文ではないのです。ですがどれも同じ内容になっています(マクロ実行時に開かれるファイルのフォルダなどは異なりますが)
最終入力データも確認してあり、空白のセル(行・列)は削除してあります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルのマクロについて質問があります。 現在は下記のマクロでエクセル表を保存しています ThisW 2 2022/09/16 11:22
- Excel(エクセル) Excel、同じフォルダ内のExcelファイルの特定シートのみを1つのファイルに集約したい 8 2022/09/07 15:12
- Excel(エクセル) フォルダ内の全ブックのシート名を変更したい 7 2022/09/22 21:34
- Excel(エクセル) エクセルのマクロで置換を教えてください 1 2022/05/19 10:27
- Excel(エクセル) エクセルのマクロ作成について教えてください 5 2023/02/20 00:39
- Excel(エクセル) 【マクロ】同じフォルダ内にある複数ブックから1つのブック内の1シートにデータを集めたい 6 2022/09/28 18:16
- Excel(エクセル) フォルダ階層が深いファイルの拡張子の一括変換 2 2022/12/23 18:40
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2023/02/21 09:28
- Excel(エクセル) エクセルのマクロについて教えてください。 2 2023/02/21 13:29
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/06/04 09:39
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
EXCEL VBA 指定したファイルが...
-
エクセルのシートの数を数えた...
-
エクセルマクロで不特定なファ...
-
vlookup関数の引数を変数で指定...
-
Accessのaccdbファイルを起動で...
-
フォルダ内のexcelファイルを順...
-
VBAでワークブックの名前を変数...
-
【Excel VBA】ファイル名が一...
-
Excelのマクロについてご教授く...
-
フォルダ内のブック全部にパス...
-
VBA ふたつの同じ様式シートの...
-
エクセル(マクロ)のファイル...
-
EXCELが終了できません
-
Excelファイルがマクロを含むか...
-
エクセルマクロ 異なるファイ...
-
ワード2007で複数ファイル自動...
-
エクセルのxls形式からxlsx形式...
-
vba dirにおけるフォルダ内にあ...
-
リンク切れチェックを行うマクロ
-
Excelで漢字人名が勝手に並び変...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
EXCEL VBA 指定したファイルが...
-
エクセルマクロで不特定なファ...
-
VBAでワークブックの名前を変数...
-
フォルダ内のexcelファイルを順...
-
エクセルのxls形式からxlsx形式...
-
エクセル 複数ファイルの一括...
-
エクセルのシートの数を数えた...
-
accessフォルダを移動したらフ...
-
vlookup関数の引数を変数で指定...
-
Accessのaccdbファイルを起動で...
-
ファイルを開かずにマクロを実行
-
【Excel VBA】ファイル名が一...
-
EXCELマクロを無効にして開く方法
-
エクセル(マクロ)のファイル...
-
ACCESS VBAでファイルを開くダ...
-
Excel VBA でファイルが開かれ...
-
ファイルの保存場所を変えたら...
-
vba初心者です。 質問です。 毎...
-
フォルダ内のブック全部にパス...
-
エクセルマクロ 異なるファイ...
おすすめ情報