こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

Excel VBAでフォーカスを移動しない方法

Excel VBA
リストのソースを設定してあるコンボボックスから次のコンボボックスに移動する際、入力にエラーあれば

フォーカスを移動しないようにするコードはどのようにすればいいのですか?

現在は

Private Sub [コンボボックス名1]_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If [コンボボックス名2] = "" Then
MsgBox "値が不正です。", vbInformation, "フォーム名"
End If
End Sub

としています。

投稿日時 - 2009-06-03 17:20:23

QNo.5013953

暇なときに回答ください

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

回答1だと永久に抜けられないので訂正。

Private Sub ComboBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If ComboBox1.Value = "" Then
MsgBox "値が不正です。", vbInformation, "フォーム名"
Cancel = True
End If
End Sub

投稿日時 - 2009-06-03 17:44:50

お礼

できました、ありがとうございました。

投稿日時 - 2009-06-04 17:15:11

ANo.2

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.1

ComboBox1.の値が空欄だった場合、抜けられないようにするには、
Cancel = Trueを入れてみてください

Private Sub ComboBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If ComboBox1.Value = "" Then
MsgBox "値が不正です。", vbInformation, "フォーム名"
End If
Cancel = True
End Sub

投稿日時 - 2009-06-03 17:36:21

補足

できました、ありがとうございました。

投稿日時 - 2009-06-04 17:15:24

お礼

できました、ありがとうございました。

投稿日時 - 2009-06-04 17:16:10

あなたにオススメの質問