- ベストアンサー
12個のCommandbuttonをスマートに
- UserFormに12個のCommandbuttonがあります。もっとスマートにできないでしょうか?
- このUserFormでは、12個のCommandbuttonが使用されています。もっと効率的な方法はないでしょうか?
- 12個のCommandbuttonをより使いやすくする方法はありますか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
VBAに慣れているならクラスを作成してやるでしょうが、 CommandButtonが12個程度ならあっさりとサブルーチンをコールした方がいいでしょう。 '=●全てのボタンから呼ばれるサブルーチン=== '= UserFormのモジュールに作成しておく === '= CommandButton1_Clickイベントの前でいいでしょう== Private Sub mySub(Moji) If Me.MultiPage1.Value = 0 Then TextBox3.Value = TextBox3 & Moji Else TextBox1.Value = TextBox1 & Moji End If End Sub '------------------------------------------------------ Private Sub CommandButton1_Click() Call mySub("1") End Sub '------------------------------------------------------ Private Sub CommandButton2_Click() Call mySub("2") End Sub '------------------------------------------------------ 以下同様に、&する値を引数にmySubをCallしてやる。 以上。
その他の回答 (2)
- mitarashi
- ベストアンサー率59% (574/965)
ここが定番でしょうが、最後の方はオブジェクト指向が分かっていないと歯が立ちそうもない感じです(深く読んでないですが) http://www.h3.dion.ne.jp/~sakatsu/Breakthrough_P-Ctrl_Arrays.htm 参考書はこちら かんたんプログラミング Excel200X VBA コントロール・関数編 (単行本) 大村 あつし (著) Excel200X VBAにおけるコントロール配列という記事があります。 UserFormを駆使したければ、この本は買って損はありません。
お礼
URL 有り難うございます。 参考にします。
- hana-hana3
- ベストアンサー率31% (4940/15541)
クラスモジュールを利用して疑似コントロール配列を作るしかありません。 http://wood-built21.ddo.jp/MlogOG/2008/04/vba.html http://wood-built21.ddo.jp/MlogOG/2008/04/vba-1.html
お礼
クラスは、今の私のレベルでは、 敷居が高いですが、提示して頂いた URLを参考に勉強したいと思います。 有り難うございました。
お礼
参考書等でサブルーチンの使い方を 呼んでも中々、理解出来ませんでしたが このように使うのですね! 勉強になりました。 本当に有り難うございました。