お疲れさまです。
下記のコードは、AIによって作られたものですが、同じ場所でエラーがなんども出てしまうため、
こちらのお世話になりたいと思います。
仕様は、アクティブなシートにC列には、品名一覧があります。その品名の左側には、"中止", "ケツバン", "保留"の文字が含まれている行が存在しております。その行を削除したいのですが、なぜか、コードの中にある「各検索文字列についてチェック」の次の行にある、targetで、コンパイルエラー→変数が定義されていないとエラーになってしまうのです。
AIからの回答では、変数は使っていないため、理由が不明と言われてしまい、進行しない状態です。
何が、原因かがわかる方がおりましたら、ご指導頂けないでしょうか
お忙しいとは思いますが宜しくお願い致します。
Dim ws As Worksheet
Dim lastRow As Long
Dim i As Long
Dim targetStrings As Variant
Dim cell As Range
Dim shouldDelete As Boolean
' アクティブなシートを設定
Set ws = ActiveSheet
' A列の最終行を取得
lastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row
' 検索する文字列の配列
targetStrings = Array("中止", "ケツバン", "保留")
' 最後の行から最初の行までループ(逆順にループすることで行削除の影響を避ける)
For i = lastRow To 1 Step -1
shouldDelete = False
' C列のセルを取得
Set cell = ws.Cells(i, "C")
' 各検索文字列についてチェック
For Each target In targetStrings
If InStr(cell.Value, target) > 0 Then
shouldDelete = True
Exit For
End If
Next target
' 行を削除
If shouldDelete Then
ws.Rows(i).Delete
End If
Next i