Métodos e ações de macro do objeto DoCmd

Para executar ações de macro do código no Access, use o objeto DoCmde seus métodos. Esse objeto substitui a instrução DoCmd que você utilizava nas versões 1. x e 2.0 do Access para realizar uma ação de macro.

Quando você converte um banco de dados, o Access converte automaticamente todas as instruções DoCmd e as ações que elas executaram no código do Access Basic em métodos do objeto DoCmd substituindo o espaço pelo . (ponto).

Algumas ações de macro funcionam de forma diferente no Access 9.0 e posterior do que na versão 1. x, 2.0 ou 7.0; essas diferenças são detalhadas abaixo.

Bancos de dados criados com o Access 95

Ação DoMenuItem

A ação DoMenuItem não é mais usada no Access. A ação ExecutarComando pode ser utilizada para realizar as tarefas para as quais você costumava utilizar a ação ExecutarItemDoMenu.

Quando você habilita um banco de dados criado com uma versão anterior do Access, a ação DoMenuItem continuará funcionando como antes.

Quando você converte um banco de dados criado com uma versão anterior do Access, todas as ações do DoMenuItem em macros são substituídas por ações RunCommand na primeira vez que as macros são salvas após a conversão. Métodos DoMenuItem utilizados em procedimentos do Visual Basic não são alterados.

Bancos de dados criados com o Access versão 1

Ação TransferSpreadsheet

O Access não pode importar planilhas do Excel versão 2.0 ou planilhas do Lotus 1-2-3 versão 1.0. Se o banco de dados convertido contiver uma macro que forneceu essa funcionalidade usando a ação TransferSpreadsheet no Access versão 1. x ou 2.0, a conversão do banco de dados alterará o argumento Tipo de Planilha para Excel versão 3.0 (se você especificou originalmente a versão 2.0 do Excel) ou causará um erro se você especificou originalmente o formato Lotus 1-2-3 versão 1.0.

Para contornar esse problema, converta as planilhas em uma versão posterior do Excel ou do Lotus 1-2-3 antes de importá-las para o Access.

Ações TransferText e TransferSpreadsheet

No Access, você não pode usar uma instrução SQL para especificar dados a serem exportados quando estiver usando a ação TransferText ou a ação TransferSpreadsheet. Em lugar de utilizar uma instrução SQL, você deve antes criar uma consulta e, então, especificar o nome da consulta no argumento Table Name.

Comparações envolvendo valores nulos

Nas versões access 1.x e 2.0, se você comparar duas expressões dentro de uma condição de macro usando um operador de comparação e uma das expressões for Null, o Access Basic retornará True ou False para a comparação, dependendo do operador de comparação que você usar. No Access 2000 e posterior, o Visual Basic retorna Null para uma comparação na qual uma expressão é Null. Para determinar se a comparação é avaliada como Nulo, utilize a função ÉNulo para verificar o resultado da comparação.

Suporte e comentários

Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.