Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


8261 / 13644 ツリー ←次へ | 前へ→

【34202】実行が遅い。 ヘブン 06/1/28(土) 19:45 質問[未読]
【34203】Re:実行が遅い。 ponpon 06/1/28(土) 20:01 発言[未読]
【34223】Re:実行が遅い。 とまと 06/1/29(日) 0:29 発言[未読]
【34225】Re:実行が遅い。 inoue 06/1/29(日) 0:59 発言[未読]
【34247】Re:実行が遅い。 ヘブン 06/1/29(日) 19:22 発言[未読]
【34250】Re:実行が遅い。 BB 06/1/29(日) 20:21 発言[未読]
【34346】Re:実行が遅い。 ヘブン 06/2/1(水) 0:59 お礼[未読]

【34202】実行が遅い。
質問  ヘブン  - 06/1/28(土) 19:45 -

引用なし
パスワード
   たくさんのシートから値を検索して取得するプロシージャを
やったら8時間ぐらいやったにもかかわらず。まだ終わりませんでした。
これはパソコンが固まったのでしょうか?固まったか
固まってないか確かめる方法はないものでしょうか?
ちなみに1000シートのときはこんなに遅いのに。
500シートの時は17,18分でした。
どんな原因が考えられるのでしょうか?
また、コードを軽くするテクニックなんかあったら教えてください。
ちなみにforの中にforをつかうのはまずいですか?
よろしくお願いします。

【34203】Re:実行が遅い。
発言  ponpon  - 06/1/28(土) 20:01 -

引用なし
パスワード
   こんばんは?

>これはパソコンが固まったのでしょうか?固まったか
>固まってないか確かめる方法はないものでしょうか?

他のソフトを起動してみればどうでしょう?
また、Ctrl+Alt+Delでタスクマネージャを起動してみれば、いかがでしょうか?


>1000シートのときは
詳しくは、わかりませんので、間違っていたらごめんなさい。

メモリをどれだけ積んでるか知りませんし、シート数がメモリ依存しているか詳しい仕様はわかりませんが、無謀だと思うのですが・・・
過去ログ見ても、シート数が多いと心配する声があるようです。

【34223】Re:実行が遅い。
発言  とまと  - 06/1/29(日) 0:29 -

引用なし
パスワード
   こんばんは。

1000シートにばらした後の目的はなんですか?
1シートでフィルタとかつかったほうがよいのでは?
印刷とかですか?

【34225】Re:実行が遅い。
発言  inoue E-MAILWEB  - 06/1/29(日) 0:59 -

引用なし
パスワード
   >どんな原因が考えられるのでしょうか?
>また、コードを軽くするテクニックなんかあったら教えてください。
>ちなみにforの中にforをつかうのはまずいですか?
どんなコードかも分からないので答えようがありません。

単に一般論でしょうが、
・Select/Activateは使わないようにする。
・処理中の画面描画やイベント発生、自動計算を殺す。
・Copy/Pasteではなく値転記する。
・不要オブジェクトは都度破棄する。
・変数は型を明示して宣言を強制する。
などでしょうか。

【34247】Re:実行が遅い。
発言  ヘブン  - 06/1/29(日) 19:22 -

引用なし
パスワード
   みなさん、ありがっす♪

▼inoue さん:
>・Select/Activateは使わないようにする。
activate
を使わないで値と書式をコピーやペイストする方法がわからないっす♪
どうしたらいいのでしょうか?

【34250】Re:実行が遅い。
発言  BB  - 06/1/29(日) 20:21 -

引用なし
パスワード
   ▼ヘブン さん:
>みなさん、ありがっす♪
>
>▼inoue さん:
>>・Select/Activateは使わないようにする。
>activate
>を使わないで値と書式をコピーやペイストする方法がわからないっす♪
>どうしたらいいのでしょうか?

値と書式だけをペーストなの?

A1をA3に値と書式をペーストする方法
Range("A1").Copy
Range("A3").PasteSpecial xlPasteValues
Range("A3").PasteSpecial xlPasteFormats

形式を選択しないでペーストする場合は
Range("A1").Copy Range("A3")

【34346】Re:実行が遅い。
お礼  ヘブン  - 06/2/1(水) 0:59 -

引用なし
パスワード
   思いきってシートを減らすことで
一応完全解決ではないですが、解決しました♪
みなさんの教えてくださった方法も機会があれば試させていただきます。

8261 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free