Excel VBA質問箱 IV

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

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


9650 / 13646 ツリー ←次へ | 前へ→

【25824】スクロールバーが固まる原因 shin 05/6/15(水) 17:28 質問[未読]
【25844】Re:スクロールバーが固まる原因 Jaka 05/6/16(木) 11:47 回答[未読]
【25876】どんな状態になるのか shin 05/6/17(金) 10:26 質問[未読]
【25899】Re:どんな状態になるのか Jaka 05/6/17(金) 15:05 発言[未読]
【25959】Re:どんな状態になるのか shin 05/6/20(月) 9:55 お礼[未読]
【25960】Re:どんな状態になるのか IROC 05/6/20(月) 9:59 回答[未読]
【25963】VBAは関係ないようです。 shin 05/6/20(月) 11:03 お礼[未読]
【25964】Re:VBAは関係ないようです。 IROC 05/6/20(月) 12:23 回答[未読]
【26223】MSへの問い合わせと回答のご報告 shin 05/6/28(火) 11:10 お礼[未読]

【25824】スクロールバーが固まる原因
質問  shin  - 05/6/15(水) 17:28 -

引用なし
パスワード
   VBAが原因かどうか判らないんですが、標題のような事象が
発生します。原因と対策をご存知の方がいらっしゃったら
教えてください。

データベース風に使用しているxlsシートで、
見出し行を固定する為に「ウィンドウ枠固定」を設定しています。
シートには、他にオートフィルタを設定し、
VBAで「検索機能」「値変換(適正化)機能」等を付与してます。

この状態でオートフィルタを実行 又は コードによる処理を実行
した時に、上下のスクロールバーが固まることがあります。
(見かけは「画面が正しく更新されていない」ような状態で、
 上下のスクロールが実行できない。)

・ファイルサイズは約1M
・画面の固定を解除すると解消される
・すべてのコード処理は画面更新(Screenupdating)をTreuにして終了
 ※VBAに原因があるとして上記しか想像できなかったので
  とりあえずした対応ですが、解決されませんでした。

すみません、VBAとは関係ない問題かもしれないんですが、
よろしくお願い致します。

【25844】Re:スクロールバーが固まる原因
回答  Jaka  - 05/6/16(木) 11:47 -

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

固まるってどういう状態なのか良く解りませんが、
▼shin さん:
>・画面の固定を解除すると解消される
解除すれば良いんじゃないですか?

解除したくなかったら、問題解決に結びつくかわからないけど、
途中に
DoEvents
を入れてみる。
コード見てないのでなんともいえませんが、適当に数箇所入れた方がいいかも。
詳しくは、ヘルプ見てね。

【25876】どんな状態になるのか
質問  shin  - 05/6/17(金) 10:26 -

引用なし
パスワード
   ▼Jaka さん:
回答ありがとうございました。
ヘルプを確認して、他のファイルを呼び出した後や
ブラウザを起動(関連ページへハイパーリンクを設定)した後
などにDoEventsを追加してみました。
ですが、やはり固まってしまいます。
設定する箇所が適切でないのかもしれないので、
関連項目なども調べつつ何度か試してみます。

確かに、「スクロールバーが固まる」では
解りにくいですね。すみません。

実際どんな状況かといいますと、
CPUがめいっぱい稼動してる時にウィンドウを移動すると
ひきずったように残像が残る、あんな感じになってます。

画面の固定線から上の部分は上向き▲とバーの一部が
通常通り見えてますが、線から下部はトラックの部分に
上記のウィンドウの残像のように何かわからないものが
重複して見えていて、当然スクロールしようにも
カーソルに反応しません。

データ件数・項目数共に多いので、項目行が見えてないと
わからない、と指摘があり、画面の固定は使用したい
状況です。(分割でも同じ現象が起こりました)

他に確認・参照した方がいいものがありましたら、
是非教えてください。

【25899】Re:どんな状態になるのか
発言  Jaka  - 05/6/17(金) 15:05 -

引用なし
パスワード
   >ウィンドウを移動するとひきずったように残像が残る、あんな感じになってます。
>画面の固定は使用したい状況です。
矛盾してませんか?
画面を書き換えてないから、当然残像は残ると思えませんか!

水浸しにした部屋は、時間がたてば勝手に乾きますが、PCは勝手に乾いてくれません。

画面更新したい所では更新して、更新したくない時は更新しないと言う発想は出来ませんか?
Trueに戻した直後にもDoEvents。

一応、DoEventsも一旦OSに制御を渡すので割り込み処理?見たいな感じで多少は更新してくれるはずなんですが。

DoEvents
DoEvents の2連発とかも良いと思いますけど。その分時間食うますが。

【25959】Re:どんな状態になるのか
お礼  shin  - 05/6/20(月) 9:55 -

引用なし
パスワード
   どうも言葉が足りなかったようですみません。

画面の更新(ScreenUpdating)を止めているのではなくて
「ウィンドウ枠の固定」を使用しています。
※最初から↑書けば誤解がなかったですね。
メニューバーを今確認しました。すみません。

なので、代わりに分割を使用してみましたが
状況が変わりませんでした。

その後、OS環境によって症状が出たり(XP)
出なかったり(Me)するのが解りましたので、
MicroSoftに問い合わせをしてみるつもりです。
※但し、仕事場は全てXPにしたばかり。

お手数おかけしました。ありがとうございます。
他にヒントになることがありましたらよろしくお願い致します。

【25960】Re:どんな状態になるのか
回答  IROC  - 05/6/20(月) 9:59 -

引用なし
パスワード
   >VBAが原因かどうか判らないんですが、標題のような事象が
>発生します。原因と対策をご存知の方がいらっしゃったら
>教えてください。

マクロを無効にして、ブックを開いて確認することはできないのでしょうか?

【25963】VBAは関係ないようです。
お礼  shin  - 05/6/20(月) 11:03 -

引用なし
パスワード
   ▼IROC さん:
>マクロを無効にして、ブックを開いて確認することはできないのでしょうか?

回答ありがとうございます。試してみました。
マクロを無効にして開いても、フィルタ機能を複数列で
使用する内に同じ症状が出ました。

データの入っているシートはブックを開いた時点では
非表示(xlVeryHidden)設定で、パスワードを入力して
初めて参照できるようにしていたので、ご指摘頂いた
方法を試すことを全く考えていませんでした(言い訳ですが)。
ひとつずつ問題点の可能性を潰さないとダメということですね。
前回の発言の通りMicrosoftに問い合わせてみるつもりですが、
説明できる部分が増えました。ありがとうございました。

※ここに書くのは不適切かもしれませんが、
先週末の一連のやり取りを先程追って読んだところです。
かなり不快な想いをされたんじゃないかと思います。
あの後でもこうして回答して頂けるのは質問する側として
すごく嬉しいですし、他人に対する自分の行動を振り返って
みようという気にもさせられました。
VBAに限らず色々勉強させて頂いてる感じです。
本当にありがとうございました。

【25964】Re:VBAは関係ないようです。
回答  IROC  - 05/6/20(月) 12:23 -

引用なし
パスワード
   マクロに原因がないとすれば、こちらでも再現できるかと思い試してみましたが、
発生させることができませんでした。
環境は、1メガくらいのブックとExcel2003/WinXP Pen4 3GHz メモリ1GB です。

ブックにゴミがたまって肥大化していることは考えられませんか?
http://www.vector.co.jp/soft/win95/prog/se260080.html
http://www.vector.co.jp/soft/win95/business/se146689.html?
以前、長期間VBAを編集しながら使い続けていたときに、
突然、まともに動作しなくなり、上記のツールを使用したところ、
ファイルサイズが減少し、快適に動作するようになりました。


 ※お気遣い有り難う御座います。

【26223】MSへの問い合わせと回答のご報告
お礼  shin  - 05/6/28(火) 11:10 -

引用なし
パスワード
   ▼IROC さん:

ブックにゴミがたまって肥大化していることは考えられませんか?
http://www.vector.co.jp/soft/win95/prog/se260080.html
http://www.vector.co.jp/soft/win95/business/se146689.html?

ありがとうございます。
どちらが適切か判断がつかなかったので、両方試してみました。が、
「プログラミングによるVisualBasicプロジェクトへのアクセスは
信頼性にかけます」と表示されて、実行できませんでした。
(セキュリティレベルを低にして、VBAProjectのロックも外して
再試行しましたがダメでした。外し忘れがあるのでしょうか?)

そこで。下記のMicrosoftからの回答の確認事項にもありましたので、
次の手順で新規ファイルを作成してみました。
 1.新規ファイルを作成
 2.シートレベルでは書式と値のみを複写
 3.マクロレベルではモジュールごとでなくコードのみを複写
 ※ファイルサイズは20kb程度小さくなりました。
ですが、同じ現象が発生します。

現在、Microsoftに関しては追加の問い合わせに対する回答待ちです。
初回の質問に対する回答と追加の問い合わせ内容をご報告まで。

[問い合わせ概要]
 ウィンドウ枠を固定したマクロを含んだExcelファイルで
 オートフィルタを使用し、複数条件で表示の絞込みを行うと
 スクルールバーの表示が固定され、使用できなくなる。
 マクロを無効にした場合も同様の現象が発生している。

[回答]
 上記現象は
 [415192-XL2002共有ブックを開くとウィンドウ枠がずれる]
 現象に関連して発生している可能性があります。
 以下の条件をすべて満たしている状態でブックを保存し、
 再度ブックを開くとウィンドウ枠の固定の位置が変わります。

 発生条件
  ・ウィンドウ枠を固定している。
  ・ウィンドウ枠のすぐ下の行がオートフィルタ等を
  使用して非表示になっている。
  ・ブックを共有している。

 上記の条件を満たしている場合、
 オートフィルタを解除してファイルを保存するか、
 いったんウィンドウの固定を解除し、再度ウィンドウ枠の
 固定を設定して利用してください。

 確認事項
  ・新規のExcelファイル・既存のExcelファイル等、
  すべてのファイルで現象が再現するかどうか
  ・ExcelをSafeモードで開いて現象が回避されるか
  ・WindowsをSafeモードで開いて現象が回避されるか

[追加の問い合わせ内容]
 ・発生条件の内、ブックの共有が該当しない
 ・指示のあった方法を試してみたが、現象が起こる。
 ・確認事項の内、Excelファイルに関しては
   新規ファイルにデータを複写した場合
   既存ファイルにデータを複写した場合
  どちらも同じ現象が起こった。
 ・Excel・WindowsをSafeモードで開いても回避されない。

・・思ったよりやっかいで、困りました。
内容がVBAと無関係の可能性大ですが、結果までは
こちらにご報告しようと思います。

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