Adicionando descrição às suas fórmulas personalizadas (UDFs)
Imagine a situação: você prepara uma fórmula em VBA
para usar na planilha, mas o usuário não entende
porque o Excel não mostra os parâmetros quando
digita a fórmula:
Quando ele clica em "Inserir função" encontra a
seguinte tela:
Esta fórmula de exemplo é bem simples e
autoexplicativa, até dá para entender sua função e o
que faz. Em fórmulas complexas isto realmente acaba
sendo um problema.
O que podemos fazer para ajudar o usuário? A partir
da versão 2010 do Excel é possível executar uma
rotina para adicionar as descrições. Ela é bem
simples:
Sub DescreverFuncao()
Dim
Nome
As String
Dim
Descricao
As String
Dim
Categoria
As String
Dim Argumentos(1 To 6)
As String
Nome = "MEDIAFINAL"
Descricao = "Retorna a média final
para um conjunto de quatro provas, um trabalho e
participação em aula"
Categoria = 14 ' Definido pelo
usuário, valor padrão
Argumentos(1) = "Nota da prova
1"
Argumentos(2) = "Nota da prova
2"
Argumentos(3) = "Nota da prova
3"
Argumentos(4) = "Nota da prova
4"
Argumentos(5) = "Nota do trabalho
entregue"
Argumentos(6) = "Nota de
participação em aula"
Application.MacroOptions _
Macro:=Nome, _
Description:=Descricao, _
Category:=Categoria, _
ArgumentDescriptions:=Argumentos
End Sub
Essa rotina só precisa ser executada uma vez para
as descrições aparecerem:
A rotina é bem simples: foram criadas algumas
variáveis contendo as descrições e essas variáveis
foram utilizadas como valores para os parâmetros do
método Application.MacroOptions.
O nome e a descrição são bem simples, é só colocar
o texto para descrever. Para os argumentos, é
preciso criar um array com a quantidade de
parâmetros que a função tem. Como esta função tem
seis parâmetros, foi utilizado
Dim Argumentos (1 To 6). Já a categoria
recebe um valor numérico de acordo com a seção em
que ela melhor se encaixar. O valor 14 se refere a
funções definidas pelo usuário. Clicando em inserir
fórmula e selecionando esta seção, a fórmula criada
aparece com sua descrição e seus argumentos:
É possível colocar em outras categorias. As opções
são as seguintes (algumas não aparecem em versões
mais antigas):
1: Financeira
2: Data e Hora
3: Matemática e Trigonométrica
4: Estatística
5: Pesquisa e Referência
6: Banco de Dados
7: Texto
8: Lógico
9: Informações
10: Comandos (normalmente oculta)
11: Personalização (normalmente oculta)
12: Controle de Macro (normalmente oculta)
13: DDE/Externa (normalmente oculta)
14: Definido pelo Usuário
15: Engenharia
16: Cubo
17: Compatibilidade
18: Web
Lembre-se que a rotina só precisa ser executada uma
vez para adicionar as descrições, que passam a ser
atreladas à planilha. Se precisar alterar alguma
descrição ou mesmo a categoria da fórmula, basta
editar a rotina e processar novamente.
Espero que este artigo seja útil. Se tiver alguma sugestão de pauta, deixe nos comentários. Até o próximo artigo!
Pedro Martins
Pós-graduando em Business Intelligence e Big Data pela Faculdade
Impacta de Tecnologia. Formado em Tecnologia em Eletrônica Digital
com Ênfase em Microprocessadores