お世話になります。エクセル(2003)VBAについてです。
お世話になります。エクセル(2003)VBAについてです。 下記マクロは2列目(B列)に変化があった時、変化(target)行と同行の10列目をクリアするコードですが、これが結合セル(例えばB1:B3)の場合ですと、最上段行のみに有効で10列目1行目のみクリアになり2、3行目はクリアしません。結合全部(1~3行目)の行をクリアするコードを教えて下さい。 Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column = 2 Then Cells(Target.Row, 10).ClearContents End If End Sub 宜しくお願い致します。
Excel | Visual Basic・40閲覧・100
ベストアンサー
こんな感じ Private Sub Worksheet_Change(ByVal Target As Range) Dim r As Variant If Intersect(Target, Columns(2)) Is Nothing Then Exit Sub For Each r In Target If r.Column = 2 Then r.Offset(, 8).Resize(r.MergeArea.Rows.Count).ClearContents End If Next End Sub
1人がナイス!しています
質問者からのお礼コメント
早速のご回答ありがとうございます。ネット検索等、長時間解決出来なかったのですが、おかげ様で一発で解決しました。ありがとうございました。
お礼日時:5/22 16:36