重复任务,直到没有错误vba

时间:2016-05-15 19:27:18

标签: excel vba excel-vba

我正在编写脚本以根据股票名称查找代码。当然,有时候公司的编写方式并不存在。这样做的原因是源通常会在最后对某些不必要的位进行处理。我试图编写我的脚本,以便它会反复删除结尾的单词,直到获得自动收报机。如果永远不会获得自动收报机,则选择继续下一行并选择下一行。有没有办法做到这一点?

 private Long getCustomerId( CacheOperationInvocationContext<?> context ) {
        Object[] args = context.getArgs();
        Object firstArg = args[0];
        if(firstArg instanceof Long){
           return (Long)firstArg;
        }
        else if(firstArg instanceof Purchase){
            Purchase purchase = (Purchase)firstArg;
            return purchase.getCustomerId();
        }
        return null;
    }

1 个答案:

答案 0 :(得分:1)

对于您描述的问题(循环直到错误消失),解决方案是:

Do
    On Error Resume Next 'reset Err.obj.
    'do things you want here
    If (BoolExpressionYoWantIsTrue) Then 'the test you mention: the string is OK
        'do what you want
        Exit Do 'quit loop
    End If
Loop Until (Err.Number = 0)
On Error Goto 0 'turn off error sinking

此外,尝试使用“goto”表达式在没有 ever 的情况下进行编码。例如,您可以只添加Exit Sub代替“Goto 20”。