Pode utilizar a ação de macro ExecutarCode em bases de dados de ambiente de trabalho do Access para chamar um procedimento de Função Visual Basic for Applications (VBA).
Definição
A ação de macro RunCode tem o seguinte argumento.
Argumento de ação |
Descrição |
Nome da Função |
O nome do procedimento da Função VBA a chamar. Coloque os argumentos de função entre parênteses. Introduza o nome da função na caixa Nome da Função na janela de estrutura da macro. Este argumento é obrigatório. Nota: Numa base de dados de ambiente de trabalho do Access (.mdb ou .accdb), clique no botão Criar para utilizar o Construtor de Expressões para selecionar uma função para este argumento. Clique na função pretendida na lista no Construtor de Expressões. |
Observações
Os procedimentos de Função definidos pelo utilizador são armazenados em módulos Access.
Tem de incluir parênteses, mesmo que o procedimento da Função não tenha argumentos, como no exemplo seguinte:
TestFunction()
Ao contrário função definida pelo utilizador nomes utilizados para propriedade de evento definições, o nome da função no argumento Nome da Função não começa com um sinal de igual (=).
O Access ignora o valor devolvido da função.
Nota: Não pode chamar um procedimento de Função a partir de uma macro se o nome da função for o mesmo que o nome do módulo.
Sugestão
Para executar um procedimento Sub ou procedimento de evento escrito no Visual Basic, crie um procedimento de Função que chame o procedimento Sub ou o procedimento de evento. Em seguida, utilize a ação de macro ExecutarCode para executar o procedimento de Função.
Se utilizar a ação de macro ExecutarCódigo para chamar uma função, o Access procura a função com o nome especificado pelo argumento Nome da Função nos módulos padrão da base de dados. No entanto, quando esta ação é executada em resposta ao clique num comando de menu num formulário ou relatório ou em resposta a um evento num formulário ou relatório, o Access procura primeiro a função no módulo de classe do formulário ou relatório e, em seguida, nos módulos padrão. O Access não pesquisa os módulos de classe que aparecem na área Módulos do Painel de Navegação para a função especificada pelo argumento Nome da Função .
Esta ação não está disponível num módulo VBA. Em vez disso, execute o procedimento de Função pretendido diretamente no VBA.