2010-08-27 5 views
0

Mon code est comme ci-dessouserreur VB attraper

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

Intread de l'échec de l'impression que je veux imprimer la description de l'erreur. J'ai essayé

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

mais cela ne fonctionne pas. Des idées?

+0

Eh bien, 0 lignes affectées ne signifie pas qu'une erreur est survenue, n'est-ce pas? – Mischa

Répondre

1

L'objet Err a une valeur uniquement après qu'une erreur s'est produite. Donc, essayez ceci

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