Índice:
Vídeo: [Excel VBA] Caixas de Diálogo com MSGBox 2/2 2025
A caixa de diálogo Inserir Função é uma útil ferramenta do Excel que permite escolher uma função da planilha VBA de uma lista e solicita os argumentos da função. Suas funções de planilha personalizada também aparecem na caixa de diálogo Inserir Função. As funções personalizadas aparecem na categoria Definida pelo usuário.
Os procedimentos de função definidos com a palavra-chave Privada não aparecem na caixa de diálogo Inserir Função. Portanto, se você escrever um procedimento de função projetado para ser usado somente por outros procedimentos do VBA (mas não nas fórmulas), você deve declarar a função como Privada.
Exibição da descrição da função
A caixa de diálogo Inserir função exibe uma descrição de cada função incorporada. Mas, como você pode ver, uma função personalizada exibe o seguinte texto como sua descrição: Nenhuma ajuda disponível.
Para exibir uma descrição significativa da sua função personalizada na caixa de diálogo Inserir Função, execute algumas etapas adicionais (não intuitivas):
-
Ative uma planilha na pasta de trabalho que contém a função personalizada.
-
Escolha Desenvolvedor → Código → Macros (ou pressione Alt + F8).
A caixa de diálogo Macro aparece.
-
No campo Nome da macro, digite o nome da função.
Observe que a função não aparece na lista de macros; Você deve digitar o nome.
-
Clique no botão Opções.
Aparece a caixa de diálogo Opções de macro.
-
No campo Descrição, digite uma descrição da função.
-
Clique em OK.
-
Clique em Cancelar.
Agora, a caixa de diálogo Inserir função exibe a descrição de sua função.
A função personalizada agora exibe uma descrição.
As funções personalizadas, por padrão, estão listadas na categoria Definida pelo usuário. Para adicionar uma função a uma categoria diferente, você precisa usar o VBA. Esta declaração, quando executada, adiciona a função TopAvg à categoria Math & Trig (que é categoria 3):
Aplicação. MacroOpções Macro: = "TopAvg", Categoria: = 3
Verifique o sistema de Ajuda para outros números de categoria.
Você precisa executar esta declaração apenas uma vez. Depois de executá-lo (e salvar a pasta de trabalho), o número da categoria é atribuído permanentemente à função.
Adicionando descrições de argumentos
Quando você acessa uma função incorporada na caixa de diálogo Inserir função, a caixa de diálogo Argumentos de função exibe descrições dos argumentos.
No passado, não foi possível adicionar descrições de argumentos. Mas, começando com o Excel 2010, a Microsoft finalmente implementou esse recurso. Você fornece descrições de argumentos usando o método MacroOptions. Aqui está um exemplo que adiciona descrições para os argumentos usados pela função TopAvg:
Sub AddArgumentDescriptions () Application. MacroOptions Macro: = "TopAvg", _ ArgumentDescriptions: = _ Array ("intervalo que contém os valores", _ "Número de valores para a média") End Sub
Você precisa executar este procedimento apenas uma vez. Depois de executá-lo, as descrições dos argumentos são armazenadas na pasta de trabalho e estão associadas à função.
Observe que as descrições dos argumentos aparecem como argumentos para a função Array. Você deve usar a função Array mesmo se você estiver atribuindo uma descrição para uma função que tenha apenas um argumento.
