エクセル(Excel)マクロのイベントプロシージャについての質問です。 シートモジュールの

Excel | Visual Basic68閲覧

ベストアンサー

0

丁寧な回答まことに有り難うございます。 再質問させてください。 (1) 引数がRange型の場合は、プロシージャーAからプロシージャーBにhoge As Rangeを値渡しにしても、プロシージャーB内でhoge.Value = 1などを書き換えるとプロシージャーA内のhoge.Valueも1になります Sub プロシージャーB (ByVal r As Range) r = 1 End Sub 通常値渡しとした場合は変更はもとのプロシージャに影響しないが、Range型に限ってはその値が変化し Sub プロシージャーA()の中で A1セルの値がなんであれ、プロシージャBでrに代入した1となると理解しましたが正しい理解でしょうか (2) Targetについては、選択しているセルを表す特殊な変数という理解で良いのでしょうか? 併せてお教えいただければ幸いです。

ThanksImg質問者からのお礼コメント

ggrksさまには 重ね重ねとはなりますが Chieさまご両名にあっては 迅速かつ丁寧な回答ありがとうございました 今後とも引き続き宜しくお願いいたします。

お礼日時:9/16 20:54

その他の回答(1件)

0

Targetでそのとき選択されたセルが指定できますので、そのセルの値などが必要な場合利用できます。 たとえば If Target.Column = Columns("A:A").Column Then MsgBox Target.Value End If としておけば、A列が選択された時に選択されたセルの値をMsgBoxで表示できます。