• ベストアンサー

エクセル vba userform について

現在USERFORMを使用してますが、つまずいています。 たとえば、TEXTBOX1がブランクならばコマンドボタンにフォーカス?をもっていきたいのです。 IF TEXTBOX1="" THEN コマンドボタン1.SETFOCUS ELSE TEXTBOX2.SETFOCUS END IF のような形にしてますが、うまくいきません コマンドボタンを押すとシートにそれぞれ反映されるように作成はできております。 余計なタブ操作をしたくありません。 よろしくお願いします

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

  • ベストアンサー
  • KenKen_SP
  • ベストアンサー率62% (785/1258)
回答No.1

こんな感じでしょうか? Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)      On Error GoTo ErrorHandler   Application.EnableEvents = False   If Me.TextBox1 = "" Then     Me.CommandButton1.SetFocus   Else     Me.TextBox2.SetFocus   End If    ErrorHandler:   Application.EnableEvents = True    End Sub

その他の回答 (1)

  • Dainty
  • ベストアンサー率45% (27/59)
回答No.2

どこに記述していますか? テキストボックスのイベントプロシージャに記述すれば動作すると思いますが。 例えば、 TextBox1_AfterUpdate() とか TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean) とか。

関連するQ&A