Como criar um procedimento (Visual Basic)
Você inclui um procedimento entre uma instrução de declaração inicial (Sub
ou Function
) e uma instrução de declaração final (End Sub
ou End Function
). Todo o código do procedimento está entre essas instruções.
Um procedimento não pode conter outro procedimento, portanto, as instruções iniciais e finais precisam estar fora de qualquer outro procedimento.
Se você tiver um código que executa a mesma tarefa em locais diferentes, poderá gravar a tarefa uma vez como um procedimento e chamá-la de locais diferentes em seu código.
Para criar um procedimento que não retorna um valor
Fora de qualquer outro procedimento, use uma instrução
Sub
, seguida por uma instruçãoEnd Sub
.Na instrução
Sub
, siga a palavra-chaveSub
com o nome do procedimento e, em seguida, a lista de parâmetros entre parênteses.Coloque as instruções de código do procedimento entre as instruções
Sub
eEnd Sub
.
Para criar um procedimento que retorna um valor
Fora de qualquer outro procedimento, use uma instrução
Function
, seguida por uma instruçãoEnd Function
.Na instrução
Function
, siga a palavra-chaveFunction
com o nome do procedimento, depois a lista de parâmetros entre parênteses e, em seguida, uma cláusulaAs
especificando o tipo de dados do valor retornado.Coloque as instruções de código do procedimento entre as instruções
Function
eEnd Function
.Use uma instrução
Return
para retornar o valor ao código de chamada.
Para conectar seu novo procedimento com os blocos de código antigos e repetitivos
Verifique se você definiu o novo procedimento em um local no qual o código antigo tenha acesso a ele.
No bloco de código antigo e repetitivo, substitua as instruções que executam a tarefa repetitiva por uma única instrução que chama o procedimento
Sub
ouFunction
.Se o procedimento for um
Function
que retorna um valor, verifique se a instrução de chamada executa uma ação com o valor retornado, como armazená-lo em uma variável ou se o valor será perdido.
Exemplo
O procedimento Function
a seguir calcula o lado mais longo, ou hipotenusa, de um triângulo direito, considerando os valores dos outros dois lados:
Function Hypotenuse(side1 As Double, side2 As Double) As Double
Return Math.Sqrt((side1 ^ 2) + (side2 ^ 2))
End Function