Select Caseステートメントによる分岐処理で所得税の計算をしてみます。なお、ステートメントとは キーワード、演算子、変数、定数、および式を含めることができる完全な命令です。 各ステートメントは、次のいずれかのカテゴリに属す。
●宣言ステートメント。変数、定数、またはプロシージャの名前を指定。
●実行可能なステートメント。アクションを開始。 これらのステートメントでは、メソッドまたは関数を呼び出し、コードのブロックをループまたは分岐する。
条件分岐が4つ以上の場合はIFを使うよりもSelect Caseの方がソースも分かり易くて便利。
VS Basicを起動したら[新しいプロジェクトの作成]にて新規プログラム作成モードに入ります。最初にTextBox1つ、Button2つ、Label3つを配置します。
プロパティーにて文字やパーツのサイズを調整して上の様なレイアウトとしました。次にソースです。TextBox1とLabel3の文字サイズは12ポイントとしています。
で、実際のソースは・・・
「-----------------」は区切り線なので記述の必要はありません。
青字は自動入力部分で修正の必要はありません。
黒字が入力部分です。
赤字はコメント文なので記述の必要はありません。
-----------------
Public Class Form1
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim kazeigaku, shotokuzei As Long
' kazeigaku(課税所得), shotokuzei(所得税)は長整数型変数
kazeigaku = Val(TextBox1.Text)
' TextBox1に入力した文字を数値変換してkazeigakuに代入
Select Case kazeigaku
Case 1000 To 1950000
shotokuzei = kazeigaku * 0.1
' 課税所得が1000〜1950000の時の所得税額は
' 課税所得×10%
Case 1950001 To 3300000
shotokuzei = kazeigaku * 0.1 - 97500
' 課税所得が195001〜3300000の時の所得税額は
' 課税所得×10% − 97500
Case 3300001 To 6950000
shotokuzei = kazeigaku * 0.2 - 427500
' 課税所得が3300001〜695000の時の所得税額は
' 課税所得×20% − 427500
Case 6950001 To 9000000
shotokuzei = kazeigaku * 0.33 - 636000
' 課税所得が695001〜9000000の時の所得税額は
' 課税所得×10% − 636000
Case 9000001 To 18000000
shotokuzei = kazeigaku * 0.4 - 1536000
' 課税所得が9000001〜18000000の時の所得税額は
' 課税所得×33% − 1536000
Case 18000001 To 40000000
shotokuzei = kazeigaku * 0.45 - 2796000
' 課税所得が18000001〜40000000の時の所得税額は
' 課税所得×40% − 2796000
Case Else
shotokuzei = kazeigaku * 0.45 - 4796000
'上のいずれにも該当しない場合は
' 所得税額 = 課税所得×45% − 4796000
End Select
If kazeigaku < 1000 Then
Label3.Text = "¥0"
' 課税所得が1000以下の場合はLabel3に「¥0」 を表示
Else
Label3.Text = Format(shotokuzei, "\\###,###,###,###")
' 所得税額の表示形式を指定
End If
End Sub
-----------------
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
' Button3がクリックされたら終了
End
End Sub
End Class
-----------------
ソース記述中にエラーがなければデバッグです。
課税対象額が1億円の場合・・・
所得税は40,204,000円となるそうです。所得税ぐらいは一度でもいいから稼ぎたいですね。
Visual Studio Basic 2019