我试图对一些数据执行一些操作,但它们不起作用,我需要找到一种方法来忽略那些不符合所有要求的单元格。
基本上,我有一个列,其中一些单元格的内容中有文本+数字,而另一些单元格只有文本。我搜索所有这些内容,在一列中拆分文本,在另一列中拆分数字。然后,运行一个宏来查找另一列中每一列的匹配文本。
但是,当我试图从数字中分割文本时,我搜索第一个"(“),因为我的数字格式是(10.10.10),但是如果找不到它,就会出现单元格值:# value!(好的,这是因为没有找到字符)。问题是:如果我运行我的宏"#VALUE!它崩溃了,而不完成它的执行。“
我试过用
关于误差GoTo
在我的宏代码中,但由于某种原因,它不处理“运行时错误:类型错配”。
For contadorOr = 2 To colO
For contadorDes = 2 To colA
On Error GoTo cont
If InStr(1, Cells(contadorDes, colunaDestino).Value, Cells(contadorOr, colunaOrigem).Value) Then
If InStr(1, Cells(contadorOr, colunaOrigem + 4).Value, Cells(contadorDes, colunaDestino + 1).Value) Then
Cells(contadorOr, colunaOrigem + 5).Value = "Mesma versão"
End If
Exit For
End If
Next contadorDes
cont: Next contadorOr有什么建议吗?我可以忽略这个错误(当它发生时,我的变量contadorOr是递增的,没有下一个值)或者任何避免#值的方法!我的职责回来了,但还没有成功。提前谢谢。
发布于 2014-01-23 10:52:04
与使用错误处理选项不同,您可以检查要检查/处理的单元格是否返回错误。这很简单,如下所示:
If IsError(Cells(contadorDes, colunaDestino).Value) Then
'to do anything if there is error
'usually...do nothing
Else
'do what you want if there is no error
End ifhttps://stackoverflow.com/questions/21305844
复制相似问题