Como criar uma função definida pelo usuário no Microsoft Excel

Índice:

Como criar uma função definida pelo usuário no Microsoft Excel
Como criar uma função definida pelo usuário no Microsoft Excel

Vídeo: Como criar uma função definida pelo usuário no Microsoft Excel

Vídeo: Como criar uma função definida pelo usuário no Microsoft Excel
Vídeo: O Formato ELF - Parte 1 2024, Abril
Anonim

O Microsoft Excel tem muitas funções internas, como SOMA, VLOOKUP e ESQUERDA. Ao começar a usar o Excel para tarefas mais complicadas, você pode descobrir que precisa de uma função que não existe. É aí que entram as funções personalizadas! Este wikiHow ensina como criar suas próprias funções no Microsoft Excel.

Passos

259250 1
259250 1

Etapa 1. Abra uma pasta de trabalho do Excel

Clique duas vezes na pasta de trabalho na qual deseja usar a função personalizada para abri-la no Excel.

259250 2
259250 2

Etapa 2. Pressione Alt + F11 (Windows) ou Fn + ⌥ Opt + F11 (Mac).

Isso abre o Editor do Visual Basic.

259250 3
259250 3

Etapa 3. Clique no menu Inserir e selecione Novo Módulo

Isso abre uma janela de módulo no painel direito do editor.

Você pode criar a função definida pelo usuário na própria planilha sem adicionar um novo módulo, mas isso o impedirá de usar a função em outras planilhas da mesma pasta de trabalho

259250 4
259250 4

Etapa 4. Crie o cabeçalho da sua função

A primeira linha é onde você nomeará a função e definirá nosso intervalo. Substitua "FunctionName" pelo nome que deseja atribuir à sua função personalizada. A função pode ter quantos parâmetros você quiser e seus tipos podem ser qualquer um dos dados básicos do Excel ou tipos de objeto como Faixa:

Função FunctionName (param1 As type1, param2 As type2) As return Type

Você pode pensar nos parâmetros como os "operandos" sobre os quais sua função atuará. Por exemplo, quando você usa SIN (45) para calcular o seno de 45 graus, 45 será considerado um parâmetro. Então, o código da sua função usará esse valor para calcular outra coisa e apresentar o resultado

259250 5
259250 5

Etapa 5. Adicione o código da função

Certifique-se de usar os valores fornecidos pelos parâmetros, atribua o resultado ao nome da função e feche a função com "Função final". Aprender a programar em VBA ou em qualquer outra linguagem pode levar algum tempo e um tutorial detalhado. No entanto, as funções geralmente têm pequenos blocos de código e usam muito poucos recursos da linguagem. Alguns elementos úteis são:

  • O bloco If, que permite que você execute uma parte do código apenas se uma condição for atendida. Observe os elementos em um bloco de código If: condição IF código THEN código ELSE END IF. A palavra-chave Else junto com a segunda parte do código são opcionais:

    Função Resultado do Curso (nota As Integer) As String Se nota> = 5 Then CourseResult = "Aprovado" Else CourseResult = "Rejeitado" End If End Function

  • O bloco Do, que executa uma parte do código While ou Até que uma condição seja atendida. No código de exemplo abaixo, observe os elementos DO código LOOP WHILE / UNTIL. Observe também a segunda linha em que uma variável é declarada. Você pode adicionar variáveis ao seu código para usá-las mais tarde. As variáveis atuam como valores temporários dentro do código. Finalmente, observe a declaração da função como BOOLEAN, que é um tipo de dados que permite apenas os valores TRUE e FALSE. Esse método de determinar se um número é primo não é de longe o ideal, mas deixei-o assim para tornar o código mais fácil de ler.

    Função IsPrime (value As Integer) As Boolean Dim i As Integer i = 2 IsPrime = True Do If value / i = Int (value / i) Then IsPrime = False End If i = i + 1 Loop While i <value And IsPrime = True End Function

  • O bloco For executa uma parte do código um número especificado de vezes. No próximo exemplo, você verá os elementos FOR variável = limite inferior PARA código de limite superior NEXT. Você também verá o elemento ElseIf adicionado na instrução If, que permite adicionar mais opções ao código que deve ser executado. Além disso, a declaração da função e a variável resultam em Longa. O tipo de dados Long permite valores muito maiores do que Integer:

    Função pública Fatorial (valor As Integer) As Long Dim resultado As Long Dim i As Integer If value = 0 Then result = 1 ElseIf value = 1 Then result = 1 Else result = 1 For i = 1 To value result = result * i Next End If Factorial = result End Function

259250 6
259250 6

Etapa 6. Feche o Editor do Visual Basic

Depois de criar sua função, feche a janela para retornar à sua pasta de trabalho. Agora você pode começar a usar sua função definida pelo usuário.

259250 7
259250 7

Etapa 7. Insira sua função

Primeiro, clique na célula na qual deseja inserir a função. Em seguida, clique na barra de funções na parte superior do Excel (aquela com o fx à sua esquerda) e digite = FUNCTIONNAME (), substituindo FUNCTIONNAME pelo nome que você atribuiu à sua função personalizada.

Você também pode encontrar sua fórmula definida pelo usuário na categoria "Definido pelo usuário" no Inserir Fórmula assistente - basta clicar no fx para abrir o assistente.

259250 8
259250 8

Etapa 8. Insira os parâmetros entre parênteses

Por exemplo, = NumberToLetters (A4). Os parâmetros podem ser de três tipos:

  • Valores constantes digitados diretamente na fórmula da célula. As cordas devem ser citadas neste caso.
  • Referências de células como B6 ou referências de intervalo como A1: C3. O parâmetro deve ser do tipo de dados Range.
  • Outras funções aninhadas em sua função. Sua função também pode ser aninhada dentro de outras funções. Exemplo: = Fatorial (MAX (D6: D8)).
259250 9
259250 9

Etapa 9. Pressione ↵ Enter ou ⏎ Volte para executar a função.

Os resultados serão exibidos na célula selecionada.

Vídeo - Ao usar este serviço, algumas informações podem ser compartilhadas com o YouTube

Pontas

  • Use um nome que ainda não foi definido como nome de função no Excel ou você poderá usar apenas uma das funções.
  • Sempre que você escrever um bloco de código dentro de uma estrutura de controle como If, For, Do, etc., certifique-se de recuar o bloco de código usando alguns espaços em branco ou a tecla Tab. Isso tornará seu código mais fácil de entender e você achará muito mais fácil identificar erros e fazer melhorias.
  • Se você não sabe como escrever o código para uma função, consulte Como escrever uma macro simples no Microsoft Excel.
  • Uma função pode não exigir todos os parâmetros para calcular um resultado. Nesse caso, você pode usar a palavra-chave Opcional antes do nome do parâmetro no cabeçalho da função. Você pode usar IsMissing (parameter_name) dentro do código para determinar se o parâmetro foi atribuído a um valor ou não.
  • O Excel tem muitas funções integradas e a maioria dos cálculos podem ser feitos usando-os independentemente ou em combinação. Certifique-se de verificar a lista de funções disponíveis antes de começar a codificar as suas. A execução pode ser mais rápida se você usar as funções integradas.

Avisos

  • As funções utilizadas neste artigo não são, de forma alguma, a melhor forma de resolver os problemas relacionados. Eles foram usados aqui apenas para explicar o uso das estruturas de controle da linguagem.
  • O VBA, como qualquer outra linguagem, tem várias outras estruturas de controle além de Do, If e For. Isso foi explicado aqui apenas para esclarecer que tipo de coisas podem ser feitas dentro do código-fonte da função. Existem muitos tutoriais online disponíveis onde você pode aprender VBA.
  • Devido a medidas de segurança, algumas pessoas podem desativar macros. Certifique-se de informar seus colegas de que o livro que você está enviando contém macros e de que eles podem confiar que não danificarão seus computadores.

Recomendado: