Excel があり、特定のセル値に基づいていくつかの行を削除したいのですが、Excel は非常に巨大で、約 75000 行あります。シートをループし、セルの値を確認し、一致する場合は行を削除する通常の関数を作成しようとしましたが、非常に時間がかかります。私は30分間待ったが、プログラムはまだ実行されていた.誰かがこれを達成する方法を教えてくれる.
以下はコードです。
Private Sub CommandButton1_Click()
Dim i As Integer
For i = Range("D1").End(xlDown).Row To 1 Step -1
If Cells(i, 4) = 7 Then
Rows(i).Delete Shift:=xlUp
End If
Next i
End Sub
このコードを 50 行の小さな Excel ファイルでテストしたところ、正常に動作しています。しかし、試してみたかったExcelを試してみると、30分待たされて完了できませんでした。