
1つのシートにコンボボックス(フォームコントロール)を2つ並べてあります。
コンボボックス”ドロップ1” コンボボックス”ドロップ2”
【選択肢】 【選択肢】
・1回 ・A
・2回 ・B
・3回
とあります。それぞれのコンボボックスの選択肢は、別のシートに名前を定義して表示するようにしてあります。
その際、上の例だとマクロを6種類用意してあります。
(1) 1回A
(2) 1回B
(3) 2回A
(4) 2回B
(5) 3回A
(6) 4回B
とあり、1つ目のコンボボックスで「2回」を、2つ目のコンボボックスで「B」を選んだ場合、
(4)のマクロを実行するようにするにはどのようにしたらよいでしょうか?
※ コンボボックスは両方選ばない限りはマクロを実行させません。
また、両方既に選択してあり、そのマクロが一度実行させた後、一方だけ変更しても他のマクロを実行させたいです。
また、本件とは別の内容となっていまいますが、コンボボックスなどが”フォームコントロール”と”ActiveX コントロール”と2種類あるのですが、どのように違うのでしょうか?
ちなみにExcelは2007です。ご教授よろしくお願いします。
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
こんにちは。
私は、今のところ、2007 Office を購入する予定はないので、2003で回答させていただきます。
最初に、
>コンボボックスなどが”フォームコントロール”と”ActiveX コントロール”と2種類あるのですが、どのように違うのでしょうか?
フォームコントロールというのは、アプリケーションの中に組み込まれてあるもので、「軽い」「速い」の特徴があるのですが、フォームコントロールの細かな仕様は、もう探してもないわけです。いわゆる、「隠しオブジェクト」の分類でヘルプにも出てきません。
ActiveX コントロールは、外部ツールです。つけたしも利くわけで、Excel専用もあれば、汎用性のあるものもあります。表現力は豊かです、プロパティも豊富なのです。MS側では、フォームとは縁を切りたいところだろうとは思うのですが、過去の遺産(レガシー)としての互換性で、なかなか捨てることも出来ないわけです。コントロールツール側で行ったほうがいろいろな面で便利だとは思います。
今回のコードは、双方向で実行ということですから、このようなコードでよいかと思います。
標準モジュール
'Option Explicit
Dim a As Variant
Dim b As Variant
Sub ComboBox1_Click()
a = Sheet1.DropDowns(1).Value
b = Sheet1.DropDowns(2).Value
Call SelectMacro
End Sub
Sub ComboBox2_Click()
a = Sheet1.DropDowns(1).Value
b = Sheet1.DropDowns(2).Value
Call SelectMacro
End Sub
Private Sub SelectMacro()
Dim c As String
c = a & b
Select Case c
Case "11": Call macro1
Case "12": Call macro2
Case "21": Call macro3
Case "22": Call macro4
Case "31": Call macro5
Case "32": Call macro6
End Select
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) ExcelVBA ドロップボックスで月を選択するとそれ以降のデータが残るようにしたい。 3 2022/12/16 14:53
- Excel(エクセル) コンボボックス及びリストボックスを5段階連動させる方法をご存知の方ご教授頂きたいです。 Excelで 3 2022/04/03 21:43
- Access(アクセス) Accessにインポートした複数のテーブルを表示させる方法が分かりません。 1 2023/01/30 20:22
- SQL Server DBのテーブルの設計ができず困っています。 2 2023/06/29 16:43
- Access(アクセス) Accessフォーム 一部のレコードだけを抽出する方法について 1 2022/06/28 18:45
- Visual Basic(VBA) マクロ初心者の質問です。 1.シートを開いてマクロを実行する場合、アクセスキーでAlt-L-PMとタ 2 2022/12/23 10:08
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/06/04 09:39
- Visual Basic(VBA) 2つ目のコンボボックスが動作しません。 3 2023/03/25 12:29
- Visual Basic(VBA) エクセルのマクロについて教えてください。 7 2023/07/04 09:18
- Access(アクセス) Accessの参照フィールドの列がずれてしまいます 1 2023/07/19 15:00
このQ&Aを見た人はこんなQ&Aも見ています
-
【お題】大変な警告
【大喜利】「今このパソコンは大変危険な状態です」という警告メッセージを無視してパソコンを開いたら、こんなことが起こった
-
初めて自分の家と他人の家が違う、と意識した時
子供の頃、友達の家に行くと「なんか自分の家と匂いが違うな?」って思いませんでしたか?
-
あなたの「プチ贅沢」はなんですか?
お仕事や勉強などを頑張った自分へのご褒美としてやっている「プチ贅沢」があったら教えてください。
-
コーピングについて教えてください
皆さんはストレスを感じたとき、どのような方法や手段、テクニックで対処していますか?
-
今から楽しみな予定はありますか?
いよいよ2025年が始まりました。皆さんには、今から楽しみにしている予定はありますか?
-
既存のマクロをコンボボックスのプルダウンで選択できるようにしたいです。
Access(アクセス)
-
エクセルVBA(マクロ-コンボボックスについて)
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・一番好きなみそ汁の具材は?
- ・泣きながら食べたご飯の思い出
- ・「これはヤバかったな」という遅刻エピソード
- ・初めて自分の家と他人の家が違う、と意識した時
- ・いちばん失敗した人決定戦
- ・思い出すきっかけは 音楽?におい?景色?
- ・あなたなりのストレス発散方法を教えてください!
- ・もし10億円当たったら何に使いますか?
- ・何回やってもうまくいかないことは?
- ・今年はじめたいことは?
- ・あなたの人生で一番ピンチに陥った瞬間は?
- ・初めて見た映画を教えてください!
- ・今の日本に期待することはなんですか?
- ・集中するためにやっていること
- ・テレビやラジオに出たことがある人、いますか?
- ・【お題】斜め上を行くスキー場にありがちなこと
- ・人生でいちばんスベッた瞬間
- ・コーピングについて教えてください
- ・あなたの「プチ贅沢」はなんですか?
- ・コンビニでおにぎりを買うときのスタメンはどの具?
- ・おすすめの美術館・博物館、教えてください!
- ・【お題】大変な警告
- ・洋服何着持ってますか?
- ・みんなの【マイ・ベスト積読2024】を教えてください。
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・最強の防寒、あったか術を教えてください!
- ・歳とったな〜〜と思ったことは?
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
カメラスクロールするのを動画...
-
エクセル・VBA CheckBoxのオブ...
-
vb.netで画面のコントロールId...
-
チェックボックスをオンにした...
-
エクセルVBAでオプションボタン...
-
コントロールを移動できない
-
ユーザーフォームで動的(Me.Con...
-
エクセル コントロールツール...
-
C# タブのコントロール取得
-
ExcelVBAのコントロールの種類...
-
Labelコントロールの(左右)余...
-
'ckbl' コントロールは作成され...
-
C#で角が丸いテキストボックス
-
VBA ユーザーフォームの Keypre...
-
コンボボックスの文字によるif...
-
全てのオブジェクトのプロパテ...
-
Excel VBA で Richtextboxを使...
-
フォーム上の現在アクティブな...
-
BEGIN_EVENTSINK_MAPをお教えく...
-
トグルボタン一部を一度にON OF...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
カメラスクロールするのを動画...
-
エクセル・VBA CheckBoxのオブ...
-
エクセルVBAでオプションボタン...
-
ExcelVBAでListViewが使用できない
-
ユーザーフォームで動的(Me.Con...
-
VBA ユーザーフォームの Keypre...
-
チェックボックスをオンにした...
-
Groupboxの配下のコントロール...
-
Labelコントロールの(左右)余...
-
コントロールを移動できない
-
C# Form上に配置されたコントロ...
-
EXCELでactivexコントロールを...
-
'ckbl' コントロールは作成され...
-
vb.netで画面のコントロールId...
-
アクセス特有の書き方?
-
エクセル コントロールツール...
-
C#で角が丸いテキストボックス
-
全てのオブジェクトのプロパテ...
-
変数をコントロール型で使用す...
-
コンボボックスの文字によるif...
おすすめ情報