• ベストアンサー

Excel画面で・・・

ちわーーっす!! ExcelのVBAでフォームを表示しているときマウスでフォームを動かすと(ぐりぐり・・・)Excelの画面にフォームの残像が残ってしまいます。 ん~・・・?? フォームをクローズすると画面がリフレッシュされて残像も消えるのですが(ぅおーー!!) ファームを表示したままEXCELを再描画(リフレッシュ)したい!!っていうかフォームを動かしても(ぐりぐり・・・)残像が残らないよーにする方法を知っていたら教えてほしいかするめ味!!お願いしまんもす!!よろしくねくね!!!

  • megxp
  • お礼率37% (10/27)

質問者が選んだベストアンサー

  • ベストアンサー
noname#102878
noname#102878
回答No.3

ほぼ外しているとは思いますが、一応念のため。 フォームのInitializeイベントや、フォームをShowしているプロシージャで[Application.ScreenUpdate=False]とし、フォームのTerminateイベントや、フォームを閉じたあとに戻ってくるプロシージャで[Application.ScreenUpdate=True]とかやってませんよね?

megxp
質問者

お礼

ぐっ!!!カ・ン・ゲ・キです!!かんしゃです!!!!!! できました!!!!!!!!!!!感動です!!!!!!!! temtecomaiさんどこのどなたかしりませんが大大大感謝です!!! 画面のちらつき防止のため、ScreenUpdateを設定しているのを すっかりわすれていました!!! まだまだプログラムの道は険しいですばい・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・

その他の回答 (2)

  • ARC
  • ベストアンサー率46% (643/1383)
回答No.2

まったくのあてずっぽうですが、定期的にDoEventsを入れてやればどうでしょ?

  • nta
  • ベストアンサー率78% (1525/1942)
回答No.1

そのような症状はリソースが不足したWindows98,Meのマシンでよく見られます。リソースメータでリソース不足になっていないか確認してください。

関連するQ&A

  • 図形を描画している時の画面のスクロールについて

    エクセルでオートシェイプのフリーフォームを使って描画をしているときに、図形を閉じることなく画面のスクロールをする仕方について教えて下さい。 作業として、エクセルに地図(画像)を貼り付けて、この輪郭をフリーフォームでなぞって、イラストを作成しようとしています。この際、なるべく、詳細に輪郭をなぞりたいので、画面を300%表示にして、なぞりたいと考えています。当然、300%表示としているので、地図の全てが画面に収まりきらないので、全ての輪郭をなぞろうと思ったら、画面をスクロールさせないといけません。しかし、こちらの意図として(説明すると長くなるのでここでは割愛させて頂きます)、図形を閉じることなく一度で描きたいと考えています。画面に入りきっていない下の方へ画面をスクロールしようと、図形描画中に画面をスクロールしようと思って画面右のスクロールへマウスポインタをあわせても、マウスポインタが+字のままで、スクロールができません。マウスではなくてキーボードで操作か何かでできないかなと思っています。よろしくお願いします。

  • 画面を切り替えてもカーソルを表示させたい

    エクセルVBAです。 ユーザーフォームのテキストボックスでカーソルが点滅している状態で 例えばエクスプローラ等何でもいのですが、他の画面を表示したあと 再度ユーザーフォームを表示すると、フォーカスはそのテキストボックスに あるようなのですが、カーソルは消えています。 画面を切り替えてもカーソルが元の状態のままにするにはどうしらいいでしょうか。

  • 【Excel VBA】エクセルファイルを新規作成し、それを画面に表示せずに内容を変更するには?

    いつもお世話になっております。 今回はExcelのVBAについて質問があります。 例えば、以下のようにVBAを書くと、C:\test\1.xlsが作成され、その内容が変更されます。 Workbooks.Add.SaveAs dirName + "C:\test\1.xls" Workbooks("1.xls").Worksheets("Sheet1").Cells(1, 2).Value = 777 Workbooks("1.xls").Save Workbooks("1.xls").Close しかし、Workbooks.Add.SaveAsしてWorkbooks("1.xls").Closeするので、C:\test\1.xlsが一瞬画面に現れます。 それに、ちょっと動作が遅い感じがします(わざわざ画面に表示しているから?)。 C:\test\1.xlsを画面に表示させずに、その内容を変更する方法はありませんでしょうか? 実は、一つのExcelファイルの内容から、1000件程度のExcelファイルを作成する必要があります。 毎回、画面を表示していると大変遅くなってしまう恐れがあるのです。 上記の解決方法、又は参考になるWebサイトをご教示いただけると助かります。 以上、よろしくお願いします。

  • Excel画面で複数のファイルを開けないようにする

    Excelで入力用のシートを作り、VBAにてスクロールバーの設定や画面サイズの変更を 行っています。 このファイルを開いている状態で、他のExceファイルをオープンすると、後から開いたExcelファイル が、アクティブ画面として表示される為、入力用のシートが見えなくなってしまいます。 入力用シートのExcelファイルは常に表示しておきたいので、1つのExcelの画面に、入力用シートのExcelファイル以外を開けないようにしたいのです。 何かいい方法があれば教えて下さい。 お願い致します。

  • EXCEL2002での再計算の設定について

    はじめまして! 業務でExcel2002での動作確認テストなるものをしていたのですが… 再計算の設定(Aplication.Calcration)をシート毎に VBAで切り替えているのですが、 ブックを閉じようとした時に、 「エラーをMicrosoftに連絡してください」という画面が表示されて、 Excelが死んでしまいます…。 また、まれに再計算を手動に切り替えようとした時に、 実行待ち(マウスポインタが砂時計)のまま表示されないで Excelが固まってしまいます。 Excel2000では問題無く動作しているのですが、 Excel2002そのもののバグなのでしょうか? 情報をご存知の方、どうか教えてください。 よろしく御願いします。m(__)m

  • 【ACCESS】フォームのレコードソースのクエリを動的に書き直したときの、フォームの再描画

    ACCESS2002 帳票フォームのレコードソースにクエリを指定しています。 フォーム上のコマンドボタンを押したイベントで、その レコードソースとしているクエリのSQLを書き直しています。 問題は、その書き直したクエリをもとにして画面をもう一度 表示させなおしたい(リフレッシュさせたい)ということです。   docmd.close acForm,"フォーム名"   docmd.open "フォーム名" とすると、書き直したクエリの内容でフォームが表示されます。 フォームを閉じる→フォームを開くとしないで、フォームを リフレッシュさせる方法はないのでしょうか?

  • アクセスで他アプリから復帰した場合の再描画イベント

     エクセル、アクセスでVBAを自作している者です。コーディング暦5年以上で、フォーム画面も組めるようになりました。  いまだに理解が進まないのがイベントですが、その中で質問があります。  かなり時間のかかる処理(例えば30分とか1時間とか)を行う際に、例えば100件処理ごとに「今~件処理しました。」というようなメッセージをフォーム上に表示して、経過を知らせるとともにPCが固まっていないことを確認できるようにしています。(Application.Echoを通常はFalseにして、100件ごとにEcho=Trueに直してからRepaintメソッドで書いて、再びEcho=Falseに戻しています)  しかし、これもずっとアクセスを表示したままの場合にしか動きません。処理中に別の画面(エクセルとかエクスプローラーとか)を表示して、アクセスに戻ってくると、アクセスはVB実行中で画面の再描画はしてもらえず、処理がすべて終わるまでは白い画面(何も表示されない画面)などが表示されたままになってしまいます。フォームのActivateイベントにも仕込んでみましたが、アクセスに戻っただけではActivateイベントは発生しないようです。  Applicationオブジェクトや、CurrentProjectオブジェクトにはイベントがないようで、アクセスがアクティブになった場合に、再描画させることができるのかどうか、教えていただければ幸いです。

  • 【Excel】一度画面から消えると図が消えます

    Excelの図の描画について困っています。 オートシェイプや図形や画像などが消えてしまいます。表示はされることもありますが、スクロールして画面から隠して、もう一度戻ると図が消えてしまいます。また、図をちょっと動かす(触る?)と表示はできます。 これについて同じ現象が出てる方、解決方がわかる方がいれば、教えて頂きたいです。 何卒宜しくお願い致します。 以下スペック Excel officeXP DELL Pen4 3.4GHz Memory 1GB HD 80GB OS XP

  • VBAで実行押すまでExcel非表示にしたい

    VBAでユーザフォームを作成しました。 Excelを立ち上げるとExcelシートの前にユーザフォームが出る状態なのですが、 ユーザフォームの実行ボタンを押すまでは非表示にしたいのですが、どのような記述をしたらよいでしょうか? マクロ的に実行ボタンを押すと結果が、Excel上に反映されるので、実行ボタンを押すまで非表示であれば大丈夫です どうか教えてください。

  • エクセル:ユーザーフォームにコマンドボタンの設置

    エクセルVBAで、ユーザーフォームを利用していますが、そのユーザーフォーム内にエクセルに最初から備わっているツールバーのコマンドボタンを貼り付けることは出来るのでしょうか? というのも、図形をマウスで範囲選択して、選択された図形をDELETEで全部削除するマクロを組もうと思っているのです。 が、図形描画のツールバーに範囲選択をすると、その範囲内にある図形を全部選択できるコマンドボタンがあったので、その機能をそのままユーザーフォームに設置できればOKと思ったのですが・・・。 それと同様のことが出来るマクロを組めれば問題なのかもしれませんが、私にはちょっと無理そうです。 よろしくお願いします。