ACC2000: Excluindo inexistente objeto retorna código de erro não 7874 3011

IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.

Clique aqui para ver a versão em Inglês deste artigo: 237592
Este artigo foi arquivado. É oferecido "como está" e não será mais atualizado.
Moderado: Requer básica de macro, codificação e interoperabilidade habilidades.

Este artigo se aplica somente a um banco de dados do Microsoft Access (.mdb).

Sintomas
Quando você usa o método DeleteObject para excluir um objeto que não existe programaticamente, você receberá a seguinte mensagem de erro:
Erro em tempo de execução '7874':

Microsoft Access não pode localizar o objeto <objectname>
Em circunstâncias mesmas, versões anteriores do Access exibir a seguinte mensagem de erro:
Erro em tempo de execução '3011':

O mecanismo de banco de dados Microsoft Jet não foi possível localizar o objeto <objectname>. Certifique-se o objeto existe e se você digitou seu nome e o nome de caminho corretamente.
Causa
O Microsoft Access 2000 fornece um usuário de banco de dados OLE nativo e interface de programação que permite que você acessar um banco de dados Microsoft Access, um banco de dados do Microsoft SQL Server e outras fontes de dados. Como código de erro 3011 é específico para o mecanismo de banco de dados Jet, o código de erro foi alterado para cumprir as outras fontes de dados.
Resolução
Se você implementou a verificação de erros que procura condições em que o número do erro = 3011, modificar a verificação para fazer referência o número retornado no Access 2000 de erros. Por exemplo, substitua
MyErrorCheck:   If Err.Number = 3011 Then      ' Do something here   End If				
com:
MyErrorCheck:   If Err.Number = 7874 Then      ' Do something here   End If				
Mais Informações

Etapas para reproduzir o problema

  1. Abra o banco de dados de exemplo Northwind.mdb.
  2. Crie um módulo e digite a seguinte linha na seção Declarações caso ainda não estiver lá:
    Option Explicit					
  3. Digite o seguinte procedimento:
     Sub Test()   DoCmd.DeleteObject acTable, "XXX"End Sub					
  4. Para testar essa função, digite a seguinte linha na janela Verificação imediata e, em seguida, pressione ENTER:
    Test						
    Observe que você recebe a mensagem de erro mencionada na seção "Sintomas".
  5. Repita as etapas de 1 a 4 no projeto de exemplo NorthwindCS.adp e note que você recebe a mesma mensagem de erro.
conversão de conversão PRB executar tempo 7874 Run-time erro 3011

Aviso: este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 237592 - Última Revisão: 12/05/2015 15:16:12 - Revisão: 2.0

Microsoft Access 2000 Standard Edition

  • kbnosurvey kbarchive kbmt kbprb KB237592 KbMtpt
Comentários