[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『ユーザーフォームが表示されている事の認識』(shut)
Unload UF_comdbxの為に画面がちらつくのを防止したい。 Application.ScreenUpdating = Falseは効果がありません。
UF_comdbxの表示は、現状モーダレスですが、モーダレスでなく とも構いません。
book1.xls と Tool.xls の二つのブックが開いている状態で、 book1.xlsのセルを選択するとWorksheet_SelectionChangeが起動して、 UF_comdbxのユーザーフォームをアンロードしています。
book1.xlsのセルを選択する時には、ユーザーフォームが表示されていたり しなかったりしますが、表示されているときは消したいのです。
そこで毎回消すのではなく、表示されていたら消せば画面がちらつかないかも しれないと思うので、UF_comdbxが表示されている事の認識が出来るなら その方法を教えて下さい。
book1.xlsのコード
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If ActiveCell.NoteText() <> "" Then
Application.Run ("Tool.xls!comprob")
Else
Application.ScreenUpdating = False
Application.Run ("Tool.xls!unload_uf")
Application.ScreenUpdating = True
End If
End Sub
Tool.xlsのコード
Sub unload_uf()
Unload UF_comdbx
End Sub
UserForm_Initializeの中に Application.ScreenUpdating = False Application.ScreenUpdating = True があり、これがちらつく原因の様でした。 ユーザーフォームをUnloadするときにちらつくので、 Initializeは関係ないだろうと思っていたのですが、 違いました。 と言う事で解決しましたので、済みませんでした。
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.