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

TEXTBOX_CHANGE イベントでのイベント抑制方法を教えてください。
エクセルのVBAで、ユーザーフォーム内のTEXTBOXの内容を変更した際にイベントが発生しない様にしたいのですが、うまくいきません。


Private Sub TextBox1_Change()
Application.EnableEvents = False
UserForm1.TextBox1.Text = ""
Application.EnableEvents = True
UserForm1.TextBox1.SetFocus
End Sub

 ユーザーフォーム内では Application.EnableEvents  は使えないのかな??
どなたかご教授をお願いします。

A 回答 (1件)

UserFormには影響を及ぼさないと思いますよ



フォーム変数として
Dim bFlag as Boolean
を定義しておいて

Private Sub TextBox1_Change()
  ' 再突入際には処理を中断する
  if bFlag then Exit Sub
  ' 再突入用にフラグを設定
  bFlag = True
  TextBox1.Text = ""
  ' 次回のためにフラグを設定
  bFlag = False
End Sub
    • good
    • 0
この回答へのお礼

ありがとうございました。
 教えていただいた方法で、うまく動作しました。

お礼日時:2012/02/10 09:39

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

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


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