私はJava、またはC#のように似ています。 Range(1、A).Valueが変更された場合、Range(1、B)のようなメソッドが発生します.ValueはRange(1、A).Valueとなります。 私はVBAがWorksheet_Changeメソッドを持っていることを知っていますが、私はComboBoxを使用しています。そして、私がComboboxから値を選択すると、変更は行われませんでした。VBAで「リスナーを変更する」ことはできますか?
ActiveXコントロールではなく、フォームコントロールを使用しています。
使用しているコンボボックスの種類によって異なります:フォームコントロールを使用している場合、このコントロールの変更イベントはありません。ファイルのどこかにコンボボックスの現在の値を記録する必要があります。 ActiveXコントロールを使用している場合、 'Private Sub ComboBox1_Change()'(コンボボックスの名前が 'ComboBox1'の場合)というイベントハンドラがあります。 – Ralph
@Comintern上記のように、コメントはOPがActiveXコンポーネントを使用する場合にのみ適用されます。さもなければ、あなたのアプローチは実行可能ではありません。 – Ralph
@Cominternはい、コントロールのコンボボックスにマクロを割り当てることができます。しかし、フォームコントロールには 'click'イベントしかありません。あなたのコメントは 'DropDown1_Change'で示されているように、フォームコントロール用の変更イベントハンドラは**ありません**です。クリックイベントは、**ドロップダウンボックスがクリックされるたびに**変更されます(値が変更されたかどうかは関係ありません)。それはOPが望んでいるものではありません。したがって、あなたのソリューションはActiveXコントロール(上記のように)に対してのみ機能します。多分それを自分で試してみるべきでしょうか? – Ralph