代码之家  ›  专栏  ›  技术社区  ›  misguided

VB错误捕获

  •  0
  • misguided  · 技术社区  · 14 年前

    我的代码如下

     conDB.Execute strSQL, recordsAffected
             Sheet1.Cells(intStart, 5) = IIf(recordsAffected > 0, "Success", "Failure")
    

    打印失败,我想打印错误描述。我试过了

    Sheet1.Cells(intStart, 5) = IIf(recordsAffected > 0, "Success", Err.Des)
    

    但它不起作用。有什么想法吗?

    1 回复  |  直到 14 年前
        1
  •  1
  •   renick    14 年前

    err对象只有在发生错误后才具有值。所以试试这个

    Sub MySub(strSQL as string)
       On error goto CATCH 
       conDB.Execute strSQL, recordsAffected
       Sheet1.Cells(intStart, 5) = IIf(recordsAffected > 0, "Success", "Hmm ?")
    exit sub 
    CATCH:
       Sheet1.Cells(intStart, 5) = Err.Description
       on error goto 0
    end sub