• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルVBA 計算の繰り返し処理?)

エクセルVBAで計算の繰り返し処理を簡素化する方法

このQ&Aのポイント
  • エクセルのVBAを使用して、フォーム内のテキストボックスの値を変更することで計算の結果を表示したいです。
  • 現在は50個以上の計算ラベルがあり、各テキストボックスの値が変更されるたびに同じ計算処理を繰り返しています。
  • 簡素化するためには、テキストボックスの値が変更されるたびに一つの計算処理を実行し、結果を対応するラベルに表示するようにコードを改良する必要があります。

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

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.1

とりあえず整理統合だけでもしてみましょう。 Private Sub TextBox12_Change()  mycalc 27,28,12,13,14 End Sub Private Sub TextBox13_Change()  mycalc 27,28,12,13,14 End Sub  : private sub MyCalc(a1, a2, a3, a4, a5)  with UserForm1   .controls("Label" & a1).caption _   = val(.controls("Label" & a2).caption) * val(.controls("TextBox" & a3).value) _   * val(.controls("TextBox" & a4).value ) + val(.controls("TextBox" & a5).value)  end with end sub あとはまぁ次のステップとして,ネットで「vba コントロール配列」などで検索して活用してみてください。 http://www.asahi-net.or.jp/~ef2o-inue/vba_o/sub05_100_040.html

77TAKETAKA
質問者

お礼

有難うございました。 ずいぶんとすっきりしました。