Funções personalizadas do Excel - Criar funções definidas pelo usuário personalizadas

Como criar funções personalizadas do Excel? (com exemplos)

Para criar uma função personalizada, precisamos escrever um código para o funcionamento de nossas próprias funções, e isso é chamado de “UDF”. Funções personalizadas são funções definidas pelo usuário no Excel, portanto, para criar essas funções, você precisa conhecer a codificação VBA por completo.

Exemplo # 1 - Adicione Quaisquer Dois Números

Por exemplo, se você deseja adicionar quaisquer dois números, mostraremos uma função definida pelo usuário (UDF) simples.

  • Pressione Alt + F11 e insira o módulo.
  • Escreva o código em um módulo para criar uma função personalizada.

Qualquer função personalizada deve começar com a palavra “Função”, seguida pelo nome da fórmula.

Qualquer função também tem seus argumentos ou parâmetros semelhantes às funções personalizadas; precisamos definir esses parâmetros. Como estamos adicionando apenas dois números, vamos definir esses parâmetros e atribuir tipos de dados a essas variáveis ​​de argumento.

Uma vez que os parâmetros são definidos com um tipo de dados, precisamos definir os tipos de dados de resultado do resultado também. Vamos definir o resultado como o valor “Inteiro”.

Dentro deste “Procedimento de Função”, escreveremos o código da fórmula.

Código:

Adição de função (Num1 como inteiro, Num2 como inteiro) Como inteiro Additiona = Num1 + Num2 End Function

Isso diz que o resultado do nome da função “Adição” será a soma dos valores Num1 e Num2.

  • Agora volte para a planilha e insira quaisquer dois números inteiros.
  • Vamos adicionar esses dois números agora. Abra o sinal de igual e insira o nome da função personalizada “Adição”.

Selecione o primeiro e o segundo números inserindo o separador como vírgula (,).

  • Pressione a tecla Enter para obter o resultado.

Uau!!! Como a função SUM, obtemos o resultado da soma de dois números.

Agora, olhe para esses números.

Experimente adicionar esses dois números agora.

Obtivemos o valor de erro porque o tipo de dados dos argumentos “Num1 e Num2” é “Inteiro”, ou seja, esses dois argumentos podem conter valores entre -32767 a 32767, portanto, qualquer coisa além disso causará esses erros.

Agora tente somar esses dois números.

Mesmo isso causará um valor de erro inferior.

Mesmo que os valores de argumento individuais estejam dentro do limite do tipo de dados Inteiro, ainda temos esse erro porque a soma total desses números é maior do que o valor limite inteiro.

Já que declaramos o tipo de resultado também como “inteiro”, o resultado da adição de dois números também deve ser um limite de número inteiro.

Exemplo # 2 - Adicionar todos os números ímpares

O Excel não possui nenhuma função incorporada, que pode adicionar todos os números ímpares da lista de números. Mas nada para se preocupar, nós criaremos uma função de excel personalizada para suportar isso.

Abra a janela do editor VBA e dê um nome ao procedimento Function.

Dê o parâmetro para esta função como “Faixa”.

Isso significa que, para esta função, estamos fornecendo o valor de entrada para esta função como o “intervalo” dos valores das células.

Como precisamos fazer um loop em mais de uma célula, precisamos usar o loop “For Each” no VBA, portanto, abra o loop “For Each”.

Dentro deste loop, adicione o código abaixo.

Código:

Função AddOdd (Rng como intervalo) Para cada célula em Rng If cell.Value Mod 2 0 Then AddOdd = AddOdd + cell.Value Próxima célula End Function

Temos que usar a função “MOD” para testar o número. Quando cada valor de célula é dividido pelo número 2 e o valor do restante não é igual a zero, nosso código deve somar todos os valores ímpares.

Agora volte para a planilha e abra a função personalizada do Excel.

Selecione o intervalo numérico de A1 a D8.

Pressione a tecla Enter para obter o resultado do número “ímpar”. ”

Portanto, no intervalo de A1 a D8, temos a soma dos números ímpares de 84.

Exemplo # 3 - Adicionar todos os números pares

Da mesma forma, a função abaixo adicionará todos os números pares.

Código:

Função AddEven (Rng As Range) para cada célula em Rng If cell.Value Mod 2 = 0 Then AddEven = AddEven + cell.Value Próxima célula End Function

Esta função adicionará apenas um número par. Nesse caso, usamos a lógica de se cada valor de célula for dividido por 2 e o restante for igual a zero, o código adicionará apenas esses valores de célula.

Assim, usando a codificação VBA, podemos criar nossas próprias funções personalizadas.

Coisas para lembrar

  • Criar funções personalizadas nada mais são do que funções definidas pelo usuário.
  • Para criar funções personalizadas, deve-se ter conhecimento de habilidades avançadas de codificação VBA.
  • Ao criar as funções personalizadas do Excel, é importante estar de olho nos argumentos e seus tipos de dados.

Artigos interessantes...