投稿者 もちだ  (社会人) 投稿日時 2011/9/8 09:59:21
テキストボックスに入力する以上、イベントはたかくん氏の方法が無難だと思います。
(Timerを使用して一定時間毎に自動計算も考えましたが条件は満たさない感じですね)

ちょっとしたヒントというかサンプルというか…。
このくらいの入力系なら作るときに考慮すれば大体のエラーを排除できるので、
On Error Resume Nextなどは使わない方がいいかな、とは思います。
そういう指示なら仕方ないですが、エラーが起こってるのに続行すれば当然正常では無いので
値は変わってきます。

で、変数を宣言したら、代入して合計するより前にテキストボックスの値が数値であるかを検証します。
文字や空白を計算に含めると期待通りに動かないと思いますので、
(たぶん実行するとエラーになると思います。On Error Resume Nextを使うとそれでも続行するので値が…)
たとえばIsNumeric関数あたりで数値かどうかの判定をし、数値でなければ0を入れておくなどの工夫をしてやります。

If IsNumeric(TextBox1.Text) = True Then
    '数値として使用できる場合はAにテキストボックスの値を入れる 
    A = CInt(TextBox1.Text)
Else
    '数値でないときは0を入れる 
    A = 0
End If

こんな感じでテキストボックス4箇所のチェックを行って、合計を表示すればいいのではないでしょうか。