Como retornar um valor de uma função vba (com exemplos)


Para retornar um valor de uma função em VBA, você deve atribuir o valor ao nome da função.

Por exemplo, podemos criar a seguinte função para dividir dois valores e depois retornar o resultado da divisão:

 Function DivideValues(x,y)
    DivideValues = x / y
End Function

O nome desta função é DivideValues , então para retornar um valor desta função precisamos atribuir o resultado de x/y a uma variável de mesmo nome de DivideValues .

Se sua função envolver a lógica If Else , você poderá atribuir o valor ao nome da função várias vezes.

Por exemplo, você pode criar a seguinte função que retorna “Não é possível dividir por zero” se você tentar dividir por zero ou simplesmente retornar o resultado da divisão:

 Function DivideValues(x,y)
    If y = 0 Then
      DivideValues = " Cannot divide by zero "
    Else
      DivideValues = x / y
    End If
End Function

O exemplo a seguir mostra como usar essa sintaxe na prática.

Exemplo: como retornar um valor de uma função VBA

Suponha que queiramos criar uma função em VBA para dividir o valor da célula A2 pelo valor da célula B2 :

Podemos criar a seguinte função para fazer isso:

 Function DivideValues(x,y)
    DivideValues = x / y
End Function

Quando executamos esta macro, recebemos a seguinte saída:

A função retorna um valor de 5 , que é o resultado de 50 dividido por 10.

Também poderíamos criar uma função que usa a lógica If Else para primeiro verificar se o valor pelo qual estamos dividindo não é igual a zero:

 Function DivideValues(x,y)
    If y = 0 Then
      DivideValues = " Cannot divide by zero "
    Else
      DivideValues = x / y
    End If
End Function

Se alterarmos o valor na célula B2 e depois utilizarmos esta função para realizar uma divisão, receberemos o seguinte resultado:

Como tentamos dividir por zero, “Não é possível dividir por zero” é retornado pela função.

Recursos adicionais

Os tutoriais a seguir explicam como realizar outras tarefas comuns em VBA:

Como comentar um bloco de código em VBA
Como verificar se o arquivo existe usando VBA
Como criar pastas usando VBA

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *