我已经为每个循环都写了这个,它给出了我正在寻找的结果,但是当我单步执行代码时,它似乎在重复错误处理程序,因此运行速度很慢。有没有办法让它更高效地运行?
我根本需要错误处理的原因是因为它循环遍历 VLOOKUP 中的值并且某些单元格包含错误。
For Each cell In maxStockRange
On Error GoTo ErrorValue
If cell.value = "0" Then
cell.value = ""
End If
ErrorValue:
If cell.Text = "#N/A" Then
cell.value = ""
End If
Resume Next
Next cell
最佳答案
Option Explicit
Sub cleanDataUsingErrorHandling()
Dim cell As Range
Dim maxStockRange As Range
Set maxStockRange = Sheet1.Range("A1:A4")
For Each cell In maxStockRange
On Error GoTo ErrorValue
If cell.Value = "0" Then
cell.Value = ""
End If
GoTo nextIteration
ErrorValue:
If cell.Text = "#N/A" Then
cell.Value = ""
End If
Resume nextIteration
nextIteration:
Next cell
End Sub
关于excel - 如何使我的 VBA 错误处理更有效率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71106420/