Como: Manter o controle quando ocorre um erro
Você pode usar a construção Try... Catch... Finally demonstrativo (Visual Basic)para manipulação estruturada de exceções.Isso permite que você execute um bloco de instruções particular se uma exceção especificada ocorrer enquanto seu código estiver sendo executado.Quando isso acontece, diz-se que o código lançou a exceção e você a capturou com a instrução Catch apropriada.
Para executar um conjunto de instruções se seu código causa uma exceção
Use a construção Try... Catch... Finally para englobar o código que pode causar uma exceção.Em seguida, especifique o código que será executado se uma exceção ocorrer e, como opção, forneça um conjunto de instruções para ser executado antes que controle deixe a construção Try... Catch... Finally.
O exemplo a seguir tenta calcular a data e hora exatamente 100 anos após o valor fornecido no Object variável givenDate.
Dim givenDate As Object Dim nextCentury As Date Try nextCentury = Microsoft.VisualBasic.DateAdd("yyyy", 100, givenDate) Catch thisExcep As System.ArgumentOutOfRangeException ' The resulting date/time is later than December 31, 9999. Catch thisExcep As System.ArgumentException ' At least one argument has an invalid value. Catch thisExcep As System.InvalidCastException ' The value in givenDate cannot be interpreted as a date/time. Catch ' An unforeseen exception has occurred. Finally ' This block is always run before leaving the Try structure. End Try
Os três primeiros blocos Catch manipulam as exceções que você pode esperar de Função DateAdd (Visual Basic).Você pode lidar com qualquer exceção inesperada no último bloco Catch.
Não importa o que aconteça, o bloco Finally é sempre o último código a ser executado antes de sair da construção Try... Catch... Finally.Se você cria ou abre recursos, como conexões de banco de dados ou objetos em um blocoTry ou Catch, você pode usar o bloco Finally para fechá-los e descartá-los, se apropriado.
Se a variável de exceção thisExcep não for exibida em uma instrução de declaração, como Dim, a instrução Catch com a cláusula As serve como uma declaração.
Consulte também
Tarefas
Como: transferência controle fora de uma estrutura de controle
Como: Executar instruções conforme em um ou mais condições
Como: Testar vários valores de uma expressão
Conceitos
Estruturas de controle aninhadas