【VBA】検索してヒットしたセルの行を行ごと削除したい

画像

Visual Basic | Excel67閲覧

ベストアンサー

0
画像

Dim i As Long Dim ws As Worksheet Set wsA = Worksheets("Sheet1") Dim buf As Range, tmp As Range Dim key As String key = "090-2222-2222,090-5555-5555" For i = 1 To wsA.Cells(Rows.Count, "A").End(xlUp).Row Set tmp = wsA.Cells(i, "B") If InStr(key, tmp.Value) Then _ If buf Is Nothing Then Set buf = tmp Else Set buf = Union(buf, tmp) Next i If Not buf Is Nothing Then buf.EntireRow.Delete

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

コードを1から作成頂き、ありがとうございます。 本当に助かりました。いろいろ勉強になりました。

お礼日時:10/22 9:52

その他の回答(1件)

1

回答者さんが言われているように >>Dim ws As Worksheet >>Set wsA = Worksheets("Sheet1") 変数名が違ってます。 wsをwsAに変えましょう。 >>For i = 1 To wsA.Cells(Rows.Count, "A").End(xlUp).Row また、質問者さんのセル位置が3行目から始まっているのでそのまま使ってはうまくいきません。 1 Toを4 To からはじめたほうがいいかな。1行目からでなく4行目に合わせてみては。

1人がナイス!しています