プロが教えるわが家の防犯対策術!

こんにちわ。
excelで画面を色々と動かすVBAを作っています。

マクロ処理終了後に、セル選択のカーソル枠が、
ゴミのように画面上に残ってしまいます。
一度ウィンドウの最小化をしてから、
元のサイズへ戻すと無くなりますので、
画面上の問題だけと思われます。

画面再表示のようなコマンドを最後に出せば
良いかと思いますが、それがわかりません。

ご存知の方宜しくお願い致します。
(環境 windows98 excel:office2000)

A 回答 (4件)

こんにちは。



Application.ScreenUpdating = True

を最後に追加してみてはいかがですか?
    • good
    • 1
この回答へのお礼

ご回答有難う御座います。
ご指摘のとおり直りました。

お礼日時:2005/10/14 08:43

こんにちは。



>指摘の様にFalseに戻してからTrueにするのが
>正当な方法なのでしょうか?

単独で、ScreenUpdating =True 使っても、画面のリフレッシュはすることで、正当/不当ということではないと思います。

通常は、画面が動くと、その表示を変化させるためにメモリを使うので、ScreenUpdating=False にすると、マクロの動きが速くなります。そして、その作業が終わってから、ScreenUpdating =True を用います。実際、画面が激しく動きますので、目に非常に良くありません。

何かの作業の結果として、画面に何か残骸が残るというような場合は、仮に、画面が動いてなくても、ScreenUpdating =True を用いる方法ぐらいしか、直接的に画面に働きかける手段はないと思います。ただ、そういう症状に出会うことは少ないのです。
    • good
    • 0

通常は、


 Application.ScreenUpdating = False
  '画面が動く実行プログラム
 Application.ScreenUpdating = True

とはさみますが、
私は、失念していたけれども、
#2さんのご指摘で方法は、「単独で、以下を用いても」

 Application.ScreenUpdating = True

確かに、画面がリフレッシュしますね。
    • good
    • 0
この回答へのお礼

ご回答有難う御座います。
直りました。
指摘の様にFalseに戻してからTrueにするのが
正当な方法なのでしょうか?
ちょっと気にかかります。

お礼日時:2005/10/14 08:48

CPUやグラフィックの処理速度が低い場合


そういうことが起きるようです。

まずはサービスパックなどが入っているか確認をしてみましょう
    • good
    • 1
この回答へのお礼

ご回答有難う御座います。

お礼日時:2005/10/14 08:30

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A