Pode utilizar a ação macro Do RunCode nas bases de dados do ambiente de trabalho do Access para chamar um procedimento de função Visual Basic for Applications (VBA).
Definição
A ação macro RunCode tem o seguinte argumento.
Argumento de ação |
Descrição |
Nome da função |
O nome do procedimento de função VBA para ligar. Encerra quaisquer argumentos de função nos parênteses. Introduza o nome da função na caixa 'Nome da função' na janela de design macro. Este argumento é obrigatório. Nota: Numa base de dados de ambiente de trabalho Access (.mdb ou .accdb), clique no botão Construir para utilizar o Expression Builder para selecionar uma função para este argumento. Clique na função desejada na lista no Expression Builder. |
Observações
Os procedimentos de função definidos pelo utilizador são armazenados em módulos Access.
Deve incluir parênteses, mesmo que o procedimento de 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 configurações, o nome da função no argumento do Nome da Função não começa com um sinal igual(=).
O acesso ignora o valor de retorno da função.
Nota: Não é possível chamar um procedimento de função a partir de um 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 em Visual Basic, crie um procedimento de função que ligue para o procedimento sub-procedimento ou procedimento do evento. Em seguida, utilize a ação macro RunCode para executar o procedimento de Função.
Se utilizar a ação macro RunCode para convocar uma função, o Access procura a função com o nome especificado pelo argumento 'Nome da Função' nos módulos padrão para a base de dados. No entanto, quando esta ação funciona em resposta a clicar num comando de menu numa 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 acesso não procura os módulos de classe que aparecem na área dos 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, executar o procedimento de função desejado diretamente em VBA.