ExcelでVBAにマクロを作成しようとしていますが、別のシートの範囲にリストされている値が含まれていない場合は1テーブルの行全体が削除されます。ここでの設定は:シート1(インベントリデータ)においてExcel VBAで条件比較に基づいて行を削除する
、値のセットは、シート2(tech_translate)でカラム2
であり、列1の値のセットもあります。
基本的に、私は以下のことが起こるしたい:
は
が細胞内にある値に対して、それらを一致させる、インベントリー・データに2列にあるすべてのセルの値をチェックtech_translateの第1列の
一致する値がtech_translateであった場合、在庫データにその行に何もしない、
tech_translateで一致する値がない場合は、在庫データに行全体を削除します。
これまでのところ意味があることを願っています。助けになるために、ここに私が立ち往生している場所を示す私の現在のコードがあります。私は型の不一致のエラーが発生し続ける - 私は理由を知っているが、それを修正する方法やこれを動作させるために何をする必要があるのか分からない。
Sub deleteTechs()
Dim LastRow As Long
Dim CompRow As Range
Dim i As Integer
With Worksheets("tech_translate")
Set CompRow = .Range("a2", .Cells(.Rows.Count, "A").End(xlUp))
End With
LastRow = [A65536].End(xlUp).Row
For i = LastRow To 1 Step -1
If Cells(i, 2) <> CompRow.Cells Then Rows(i & ":" & i).EntireRow.Delete
Next i
End Sub