ExcelVBAのユーザーフォームで、複数のテキストボックスに入力した数値の合計を表示する方法をご紹介します。
Changeイベントを使用して集計します。
このページのマクロコードは、コピペで使えます。
ぜひ、お試しください。
ユーザーフォームを作成して開く
エクセルにコマンドボタンを作成し、ユーザーフォームを開きます。
マクロコードは、標準モジュール「Module1」に入力します。
Sub ボタン1_Click()
UserForm1.Show vbModeless
UserForm1.Label1.Caption = "合計:"
End Sub
マクロコードを「Module1」に入力した画面
ユーザーフォーム内部にマクロコードを入力する
マクロコードは、「UserForm1」に入力します。
Private Sub TextBox1_Change()
Call 計算
End Sub
Private Sub TextBox2_Change()
Call 計算
End Sub
Private Sub TextBox3_Change()
Call 計算
End Sub
Private Sub TextBox4_Change()
Call 計算
End Sub
Private Sub TextBox5_Change()
Call 計算
End Sub
Sub 計算()
Dim i As Long
Dim Target As Variant
Target = 0
For i = 1 To 5
Target = Target + Val(Me.Controls("TextBox" & i).Value)
Next i
Me.Label1.Caption = "合計:" & Target
End Sub
マクロコードを入力する場所「UserForm1」
動作
テキストボックスに入力した数値の合計を計算して、瞬時にラベルに表示します。
この記事がお役に立ちますと幸いです。
・【ExcelVBA】ユーザーフォーム作成の事例まとめ
【VBAユーザーフォーム】何ができるの?:使用例34選
...
「たった1秒で仕事が片づくExcel自動化の教科書【増強完全版】」
「5時間かかる作業が3時間でできます」ではなく「1秒で終わらせます」へ
毎日の業務を瞬時に終わらせるしくみを解説
リンク