2012-01-12 3 views
0

こんにちは私はおそらくこれをoverthinkingですが、どのようにテキストボックスの最初の3つの数字の655または699のテキストボックスをチェックすることができますか?2つの可能な数字のある文

私はどのように動作するようになりましたが(イム推測)、それは同様にテキストボックス内の他の番号を見つけるdoesntの場合はエラーを表示し、現在のコード:

If Microsoft.VisualBasic.Mid(txtNumber.Text, 1, 3) <> 655 Or Microsoft.VisualBasic.Mid(txtNumber.Text, 1, 3) <> 699 Then 
'ERROR 
end if 

私が間違って何をやっているのでしょうか?

デビッド

+0

を試みる 'むしろOr''よりAnd'を試してみてください。または、さらに良い、 'AndAlso'。あなたは型の安全性やセマンティクスについてまったく気にしている場合や、引用符でそれらの「数字」を置きます。テキストボックスに十分な文字が含まれていないとき – cHao

+0

あなたのエラーの原因はほぼ確実です。 – UnhandledExcepSean

+0

@SpectralGhost:ない問題。文字列に3文字以上の文字列がない場合は、その文字列を取得します。 – cHao

答えて

2

ので、同様:

If Left(txtNumber.Text, 3) = "655" OrElse Left(txtNumber.Text, 3) = "699" Then 
    ' good? 
End if 

それだけパランの中で上記の2つのテストをラップしていないの前に置かれた場合にはどちらか一方、ない場合は、エラーをしたいかもしれないように見えますが、それら。

0

最初は、最初の3文字の場合は、「ミッド」ではなく「左」を使用します。

第2に、文字列を整数でチェックしています。

第3に、3つの文字ではないかどうかをチェックしていますが、それらが等しいかどうかをチェックしたいと思っているので、それを変更することもできます。

0

If Mid(txtNumber.Text, 1, 3) <> "655" And Mid(txtNumber.Text, 1, 3) <> "699" Then 
     'Code 
    End If 
関連する問題