Option Strictをオンにする必要があります。それがなければ成功しないものと、書き直すのが一般的でないものとで何かを成功させることができるエッジケースはほんのわずかです。それがしていることはあなたがやっているのと同じ行動ですが、タイプの失敗の可能性をあまり明確にしません。
If BunifuMaterialTextbox2.Text < 3 Or BunifuMaterialTextbox2.Text = "" Then
あなたはオプションオフ厳格を持っているので、これは
If CInt(BunifuMaterialTextbox2.Text) < 3 Or BunifuMaterialTextbox2.Text = "" Then
として扱われますCInt関数は0を返し、何もに成功しますが、例外を投げ、 "" で失敗します。 OrElseの代わりにOrを使用しているので、両方の条件が常に評価されます。また、例外が最初に発生する条件があるので、テキストボックスが空の場合は例外がスローされます。
あなたはそのようREWITEできます その後3 < OrElse BunifuMaterialTextbox2.Text "BunifuMaterialTextbox2.Text =" もし
し、すべてが正常に動作します。しかし、実際に何が起こっているのか分からなければ、それは壊れやすいので、私は本当にそれをお勧めしません。
あなたのようにそれをREWITE場合:
Dim bunifuMaterial2 as Integer
If not Integer.TryParse(BunifuMaterialTextbox2.Text, bunifuMaterial2) OrElse bunifuMaterial2 < 3 Then
だけでなく、彼らは同様に、このような「猫」のような非数値を入力した場合は、空の上の例外を避けることができます、あなたは例外を回避ます。
コードファイルの先頭に 'Option Strict On'を入れてから[ask]を読んで[tour]を読んでください – Plutonix
TextBoxの** String **値を** Integer **に変換します[Int32.TryParse](https://msdn.microsoft.com/en-us/library/f02979c7(v = vs.110).aspx)を参照してください。 –