• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VBAで作成したComboboxにVBAでマクロを割り当てたい。)

VBAでComboboxにマクロを割り当てたい

このQ&Aのポイント
  • VBAで作成したComboboxに、標準モジュール内のマクロを割り当てたい場合、以下のコードを使用します。
  • 上記のコードでは、Sheet1にComboBox1が作成され、ComboBox1_Changeイベントに標準モジュール内のSub calが割り当てられます。
  • これにより、コンボボックスの選択が変更される度にSub calが実行されます。

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

  • ベストアンサー
  • nagare
  • ベストアンサー率33% (280/831)
回答No.3

三度です >ComboBoxを貼り付けるシートも毎回作成するのでこれもだめで 打開案ですがどうでしょうか? 作成するシートにComboBoxを貼り付けるのではなく、 ComboBoxが張り付いているシートをコピーする (ComboBoxが張り付いているシートは非表示) これだと、関数自体もコピーされますし、 関数名も固定でいけます 参考までに

obone
質問者

補足

説明不足ですみません。 Sheet1でComboBoxを何個貼り付けるか決定(1~100) そのあとSheet2に貼り付ける その貼り付け位置も他の条件で12種類あるので かなり複雑になりそうです。 が、ほかに方法もなさそうなのでやってみます。

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

その他の回答 (2)

  • nagare
  • ベストアンサー率33% (280/831)
回答No.2

勘違いすみません OnActionプロパティでマクロを登録するのですが、ComboBoxだとできないみたいです。 ちなみに、CheckBoxだとできます。 With ActiveSheet.CheckBoxes.Add(10, 10, 20, 20) .Name = "CheckBox " & .Index .Caption = "" .OnAction = "cal" End With 手として ComboBox_Change関数をあらかじめ複数個書いておく というのはダメでしょうか?

obone
質問者

補足

ありがとうございました。 ComboBoxはだめですか。 ComboBox_Change関数をあらかじめ複数個書いておくのも考えたのですがそもそもComboBoxを貼り付けるシートも毎回作成するのでこれもだめで。

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

Private Sub ComboBox1_Change() Call cal End Sub これでよければできますよ

obone
質問者

補足

結果てきに Private Sub ComboBox1_Change() Call cal End Sub になるようにCombobox作成マクロはつくれますか?

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

関連するQ&A

中継器WTC-C1167GC-WのSSID変更
このQ&Aのポイント
  • 中継器WTC-C1167GC-WのSSID変更方法について教えてください。
  • 問題は2.4GHzと5GHzの同一のSSIDで電波が不安定になることです。
  • 「ららくコントロール」アプリでのSSID変更がうまくいかず、対応策がわかりません。
回答を見る

専門家に質問してみよう