0
したがって、検索されるレコードの半分だけが削除されます。コードスニペットをPFBします。例:CityNameの32インスタンスが存在します。 16個だけが削除されます。ハーフレコードのみ削除 - Whileループ(VBA)を使用
i As Long, lngEndRowInv As Long
Set wsh = ThisWorkbook.ActiveSheet
i = 1
lngEndRowInv = wsh.Range("A" & Rows.Count).End(xlUp).Row
While i <= lngEndRowInv
If Cells(i, "A") = "CityName" Then
Cells(i, "A").EntireRow.Delete
End If
i = i + 1
Wend
これは逆のアプローチと関係がありますか?どんな助けや方向性もありがとうございます。ありがとう!
おかげで行を削除するたびに、あなたの参照を相殺するために必要な2行されています。学習曲線上で。 – user823911
心配はいりません。私はあなたのスクリプトの単純版を表示していたと仮定していました。より速い方法は... 'wsh.Range(wsh.Cells(1,1)、wsh.Cells(lngEndRowInv、1))。Rows.Delete' – Skytunnel
または単に後方にループします。行数をi = 1にする代わりに、i =行カウントを1ステップ-1にします。 – Jesse