Pergunta

Meu Access 2000 DB me causa problemas - às vezes (não identificou a causa) na forma de "livro" não vai fechar. Clicando no botão Fechar não faz nada, Arquivo -> Fechar não faz nada, mesmo fechando resultados de Acesso em nenhuma ação. Eu não tenho um manipulador de OnClose para este formulário. A única solução que eu posso encontrar envolve abrir o editor VBA, fazendo uma alteração no código para esse formulário (mesmo adicionando um espaço e, em seguida, apagar imediatamente o espaço), e depois voltando para fechar o formulário "livro", fechando-a, e dizendo "não, eu não quero para salvar as alterações". Só então ele será fechado. Qualquer ajuda?

Foi útil?

Solução

Aqui está um post no fórum descrevendo, penso eu, o mesmo problema que você enfrenta. Trecho Belows estados uma solução alternativa.

O que eu faço é colocar código no botão próximo que atribui novamente o SourceObject de quaisquer subformulários para um formulário em branco, tais como:

me! SubParts.sourceobject = "subBlank" 'subBlank é a minha forma que é totalmente em branco, livre de código e controles, etc. DoCmd.Close acForm, "fParts", acSaveNo

O acima de 2 linhas é a única maneira que eu encontrei para evitar o pedido de acesso de avançar para cima.

http://bytes.com/forum/thread681889.html

Outras dicas

Outra alternativa é

(Me.Checkbox) 

ou minha sintaxe preferida:

(Me!Checkbox)

Parece-me que há muita confusão nas mensagens neste tópico. A resposta que foi escolhida pelo seu autor cita um artigo onde o usuário tinha um pedido para guardar projeto muda para o formulário, mas o problema descrito aqui parece que é uma falha do formulário para fechar, não uma gravação questão (o salvamento problema surgiu apenas na solução descrevendo ir ao VBE e fazer uma mudança de código).

Gostaria de saber se o usuário original pode ter incorreta opções VBE set? Se você abrir o VBE e vá para Ferramentas | OPÇÕES, na guia Geral, você verá várias opções sobre o tratamento de erros. ERROS ruptura em não tratada ou quebrar NA CLASSE módulo deve ser escolhido, mas é importante reconhecer que, se você usar o antigo, você pode não ver certos tipos de erros.

Não há realmente o suficiente detalhe para diagnosticar muito mais, além do fato de que a referência para o controle caixa de seleção parecia ter sido a causa do problema, mas há um número de acesso de codificação melhores práticas que podem ajudar a evitar alguns destes esquisitices. As recomendações relacionadas com o código em página Melhores Práticas de Tony Toews são um bom lugar para começar.

Essa certeza é estranho. Você tem controles temporizador no formulário? Se fizer isso, tente desabilitá-lo na OnClose.

Há uma possibilidade de que a caixa de mensagem que pergunta se você deseja salvar as alterações está sendo exibida por trás do formulário. Eu acredito que esta caixa de mensagem é modal para que você deve clicar Sim ou Não antes que você possa fazer qualquer coisa com a forma que é por isso que você não pode fechar-lo.

A sua forma de ter um evento de descarga? Isso pode ser cancelada, e se for, o formulário não será fechado quando está no modo de formulário. Ele só vai perto na opinião do projeto, que, quando você editar o código do VBA é o que a forma faz na janela do Access quando você está editando o código.

A sua forma de ter uma caixa de seleção, botão de alternância ou a opção de botão? Há um bug no Access 2000 em que o Access não fechar se você testar o valor sem usar explicitamente a propriedade Value no código VBA, como este:

If Me.chkbox Then

contra:

If Me.chkbox.Value Then
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top