Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Ramifica para e retorna de uma sub-rotina dentro de um procedimento.
Sintaxe
LinhaGoSub
...
de linha
de linha...
Voltar
O argumentode linha pode ser qualquer rótulo de linha ou número de linha.
Comentários
Use GoSub e Return em qualquer lugar em um procedimento, mas GoSub e a instrução Return correspondente devem estar no mesmo procedimento. Uma sub-rotina pode conter mais de uma instrução Return , mas a primeira instrução Return encontrada faz com que o fluxo de execução se ramifique de volta para a instrução imediatamente após a instrução GoSub executada mais recentemente.
Observação
Você não pode entrar ou sair de procedimentos Sub com GoSub... Retornar.
Dica
A criação de procedimentos separados que você pode chamar pode fornecer uma alternativa mais estruturada ao uso do GoSub... Retornar.
Exemplo
Este exemplo usa GoSub para chamar uma sub-rotina dentro de um procedimento Sub . A instrução Return faz com que a execução seja retomada na instrução imediatamente após a instrução GoSub . A instrução Exit Sub é usada para evitar que o controle flua acidentalmente para a sub-rotina.
Sub GosubDemo()
Dim Num
' Solicit a number from the user.
Num = InputBox("Enter a positive number to be divided by 2.")
' Only use routine if user enters a positive number.
If Num > 0 Then GoSub MyRoutine
Debug.Print Num
Exit Sub ' Use Exit to prevent an error.
MyRoutine:
Num = Num/2 ' Perform the division.
Return ' Return control to statement.
End Sub ' following the GoSub statement.
Confira também
Suporte e comentários
Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.