| 
    
     |  | よろずや さん、Jaka さん 回答ありがとうございます。
 
 私の環境はWinXP+Excel2000SP-3です。
 フォームのコンボボックスでは、イベントが発生しないようなので、コントロールツールボックスのコンボボックスに切り替えたところ以下の式であっけなく実現しました。
 
 Private Sub ComboBox1_Change()
 Macro_test
 End Sub
 
 とは言え、コントロールツールボックス自体が、初挑戦だったので、確認に今まで掛かってしまい、お礼が遅くなりました。申し訳ありません。
 ついでと言っては失礼ですがコンボボックスについて教えてください。
 A  B  C
 1 赤  1  ???
 2 青  2
 3 黄  3   とシートにある場合
 
 フォームのコンボボックスでは
 入力範囲 A1:A3,リンクするセル C1 としたとき ボックスで青を選ぶとC1には『2』が入ります。・・・(1)
 一方コントロールツールボックスのほうでは
 ListFillRange A1:A3,LinkedCell C1 とすると ボックスで青を選ぶとC1には『青』が入ります。(1)と同様な動作をさせるため ListFillRange A1:B3
 BoundColumn 2 としました。これは正しい方法でしょうか?正式又は簡単な方法があれば宜しくお願いいたします。
 
 
 >どんなバージョンなのかわかりませんが、97だとイベントが発生しませんでした。
 >シート保護には反応するんだけど....
 >こんな感じのコードをコンボボックスにマクロ登録しないとダメですね。
 >
 >Sub コンボチェンジ()
 >  With ActiveSheet.Shapes("ドロップ 1").OLEFormat.Object
 >    MsgBox .List(.ListIndex)
 >  End With
 >End Sub
 
 
 |  |