• ベストアンサー

既存のマクロをコンボボックスのプルダウンで選択できるようにしたいです。

マクロ1、マクロ2、マクロ3を コンボボックスのプルダウンで選択できるようにしたいです。 ユーザーフォーム上でコンボボックスの三角の矢印を選択したら 下の白い部分にマクロ1、マクロ2、マクロ3を選択できて 選んだマクロを実行できるようにしたいです。 よろしくお願い致します。

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

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17070)
回答No.3

エクセルVBAでやりました。 VBでも大筋変わらないでしょう。 ーー ユーザーフォームを挿入 ユーザーフォームに1つコンボボックスを張り付け フォームモジュールに Private Sub ComboBox1_Change() MsgBox UserForm1.ComboBox1.Text x = UserForm1.ComboBox1.Text Select Case x Case "マクロ1を選択" macro1 Case "マクロ2を選択" macro2 Case "マクロ3を選択" macro3 End Select End Sub Private Sub UserForm_Initialize() UserForm1.ComboBox1.AddItem "マクロ1" UserForm1.ComboBox1.AddItem "マクロ2" UserForm1.ComboBox1.AddItem "マクロ3" End Sub エクセルならRowSourceに項目内容の入った番地(例F1:F3)をで項目を指定する方法でもできる ーー 標準モジュールに Sub macro1() MsgBox "マクロ1実行" End Sub Sub macro2() MsgBox "マクロ2実行" End Sub Sub macro3() MsgBox "マクロ3実行" End Sub ーー 実際の処理は、「MsgBox "マクロ3実行」のところへ入れること。 以上テスト済み

noname#150498
質問者

お礼

大変参考になりました。ご回答ありがとうございます。

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

その他の回答 (2)

回答No.2

コンボボックスの返り値を利用(取得して) Select Case 返り値  Case 1 マクロ1  Case2   マクロ2  Case3   マクロ3 End Select 上記マクロをコンボボックスに登録すれば可能だと思います。

noname#150498
質問者

お礼

返り値。。。? 勉強して出なおします。 大変参考になりました。ご回答ありがとうございます。

すると、全ての回答が全文表示されます。
  • pbforce
  • ベストアンサー率22% (379/1719)
回答No.1

コンボボックスに入力した文字を取得して、IF文や、Select文で条件選択して、Callすれば良いでしょう。

noname#150498
質問者

お礼

難しそうです。。。大変参考になりました。ご回答ありがとうございます。

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

関連するQ&A