Declaração GoTo VBA - Como usar a declaração GoTo no VBA?

Declaração GoTo do Excel VBA

A instrução VBA GoTo é usada quando ocorre um erro durante a execução do código, em vez de exibir o erro para retomar a próxima linha de código, ignorando a mensagem de erro. Existem dois tipos de instruções GOTO, uma é para selecionar qualquer intervalo da planilha na pasta de trabalho especificada e outra é o manipulador de erros.

Para superar os erros previstos no VBA, temos uma função chamada “GOTO”. Veremos os dois tipos de declarações GoTo neste artigo.

2 maneiras de usar a declaração GoTo no código VBA

# 1 - Método Application.GoTo

Se você quiser ir para a pasta de trabalho específica ou planilha específica em todas as pastas de trabalho abertas, podemos usar a instrução Application.GoTo método.

Vejamos a sintaxe do método Application.GoTo

  • (Referência): Isso nada mais é do que uma referência de célula especificada. Se a referência não for fornecida por padrão, ela o levará para o último intervalo de células usado.
  • (Role): Esta é uma declaração lógica de VERDADEIRO ou FALSO. Se o valor for TRUE, ele rolará pela janela. Se o valor for FALSE, ele não rolará pela janela.
Exemplo

Se você quiser ir para uma célula específica na planilha específica, podemos usar o método Goto. Eu tenho 3 planilhas nomeadas janeiro, fevereiro e março.

Se eu quiser ir para a célula C5 na planilha de Jan, usarei o conjunto de códigos abaixo.

Etapa 1: inicie o nome da macro do Excel.

Código:

Sub GoTo_Example1 () End Sub

Passo 2: Inicie o método “ Application.GoTo

Código:

Sub GoTo_Example1 ()

Application.Goto

End Sub

Etapa 3: No argumento de referência, precisamos especificar o nome da planilha e, nessa planilha, precisamos mencionar a célula específica.

Código:

Sub GoTo_Example1 () Application.Goto Reference: = Worksheets ("Jan"). Range ("C5") End Sub

Etapa 4: mencione o pergaminho como VERDADEIRO.

Código:

Sub GoTo_Example1 () Application.Goto Reference: = Worksheets ("Jan"). Range ("C5"), Scroll: = True End Sub

Etapa 5: Agora execute este código usando a tecla F5, ou você também pode executar este código manualmente, ele o levará para a planilha especificada e a célula especificada.

Agora, alterarei o argumento scroll para FALSE e verei a alteração que ele encontrará.

Sub GoTo_Example1 () Application.Goto Reference: = Worksheets ("Jan"). Range ("C5"), Scroll: = False End Sub

Se você quiser ir para uma pasta de trabalho específica, deverá mencionar o nome da pasta de trabalho também antes do nome da pasta de trabalho.

Sub GoTo_Example1 () Application.Goto Reference: = Workbooks ("Book1.xlsx"). Worksheets ("Jan"). Range ("C5"), Scroll: = False End Sub

# 2 - Método de tratamento de erros

Quando uma determinada linha de código encontra um erro, o VBA para de executar o restante do código e mostra a mensagem de erro.

Por exemplo, observe a linha de código abaixo.

Sub GoTo_Example2 () Sheets ("April"). Delete Sheets.Add End Sub

O código acima diz para excluir a planilha em abril e adicionar uma nova planilha. Na pasta de trabalho ativa, se houver qualquer nome de planilha chamado April, ela será excluída ou mostrará a caixa de diálogo de mensagem de erro abaixo.

Quando executo este código, minha pasta de trabalho não tinha uma planilha chamada April, então o código VBA não conseguiu localizar o nome da planilha e gera o erro. Às vezes, precisamos ignorar esse erro porque, muitas vezes, se não houver um nome de planilha chamado April, precisamos continuar com as outras linhas de código.

Para eliminar esse erro, podemos usar o método GoTo como um manipulador de erros.

Agora irei modificar o código conforme On error vai para a próxima linha.

Sub GoTo_Example2 () Em caso de erro, GoTo NextLine Sheets ("April"). Delete NextLine: Sheets.Add End Sub

Se você executar isso, a nova planilha será adicionada, embora não haja nenhum nome de planilha chamado April.

A declaração “On Error GoTo NextLine” entende que se ocorrer algum erro, ele irá pular para a próxima linha e, na próxima linha, o código VBA é para adicionar uma nova planilha.

Coisas para lembrar

  • Se você quiser pular para a próxima linha quando o erro ocorrer, você também pode usar a instrução On Error Resume Next VBA.
  • Para pular para a próxima, você precisa ter certeza de que está previsto um erro nessa linha específica de código.
  • Se a linha importante do código pular com esse manipulador de erros, sua tarefa pode não ser concluída perfeitamente.

Artigos interessantes...