• ベストアンサー

どのイベントかわかりません・・・。

Text3=Text1+Text2という式で、Text1に3を入れ、Text2に4を入れたら自動的にその計算結果をText3のテキストボックスに7というふうに出したいのですが、 Private sub Text3 ???? Text3=Text1+Text2 End sub ???の部分のイベントがわかりません。。 Clickだと面倒なので、教えてください。 宜しくお願いします!

質問者が選んだベストアンサー

  • ベストアンサー
  • kukkychan
  • ベストアンサー率12% (23/190)
回答No.2

この場合、text1及びtext2を入力した場合に、text3へ結果を反映 したいという風に思えるのでtext3のイベントではなく text1と、text2のイベントとして、処理を書くほうが良いと思います。 Private Sub text1_Change()    'text2に数値が入力されていた場合のみ処理実行 If Text2.Text <> vbNullString then   Text3.Text = Val(Text1.Text) + Val(Text2.Text)  End If  End Sub Private Sub text2_Change()    'text1に数値が入力されていた場合のみ処理実行 If Text1.Text <> vbNullString then   Text3.Text = Val(Text1.Text) + Val(Text2.Text)  End If  End Sub あと数値チェックとかもした方が良いと思います。 また、フォーカスが移動した時点でよければ、 それぞれtext1とtext2のLostFocusイベントでも 良いんじゃないでしょうか^^

kintaro987
質問者

お礼

LostFocusでばっちりできました! ありがとうございます!

すると、全ての回答が全文表示されます。

その他の回答 (1)

  • MovingWalk
  • ベストアンサー率43% (2233/5098)
回答No.1

Text1とText2にデータを入力するのですから、 Text3のイベントではないですね。 Private sub Text1_after_update() Private sub Text2_after_update() だったかな? 今、手許にないのであやふやですが。 いずれにしても、Text1、Text2の値が更新されたイベントを処理すればいいと思います。

kintaro987
質問者

お礼

参考になりました! ありがとうございます!

すると、全ての回答が全文表示されます。

関連するQ&A