| 
    
     |  | ▼kouka さん: 
 ループしているというのは勘違いじゃないですか?
 ループはしていないと思いますよ。ただ、思ったような結果にならないだけでは?
 
 う〜ん・・・
 コードとしては(これだけ短いこーどなのに)間違い部分が満載です。
 
 まず、SelectionChageイベントは適切ではありません。
 Changeイベントを使うべきですね。
 
 次に、通常、イベント処理においては、動きのあったセルが、マクロで対象としているかどうかのチェックをします。
 (対象外のせるなら無視)
 それをしていませんね。
 
 そもそもが、Changeイベント と 標準モジュールにわけて処理することが、めずらしいですね。
 もちろん、それが妥当かつ必要なら、わけることもありますけど、今回は全く不要ですね。
 
 最大の間違いは、この Macro1 には商品名という変数定義はありません。
 モジュールの先頭に Option Explicit の記述がないと思われますが、それがないので
 たまたまコンパイルエラーにはなりませんが、ここでの宣言のない変数は、テンポラリーに
 生成されます。同姓同名ですけど、SelectionChangeイベントの商品名という名前の変数とは、まったく別物。
 なので、これが実行されたとしても、SelectionChangeイベントでは やはり <> です。
 
 まずはイベントを適切なもの(Changeイベント)にした上で、対象のセル(A1)の変更かd峰かを判定するのが第一歩。
 次に同姓同名だけど別の変数というところをどうするか、これが第二歩。
 これについては、Changeイベント内で、完結させれば解決します。
 
 がんばってください。
 壁にぶつかればSOSをどうぞ。
 
 
 |  |