Página 1 de 1

Consulta através do msquery em arquivo aberto gera erro

Enviado: 12 Abr 2016 às 18:05
por RubensOliveira
Boa tarde.
Faço consulta em um arquivo excel e quando ele está aberto retorna o erro abaixo:
Imagem
Pergunto se existe um comando SQL que permita consultar o arquivo aberto. Fiz várias pesquisas no google mas nenhum comando funcionou. Segue abaixo o codigo que utilizo para efetuar a consulta:
Imagem
Ressalto que o arquivo estando fechado a consulta funciona normalmente.
Agradeço antecipadamente a ajuda.
Rubens

Re: CONSULTA ATRAVES DO MSQUERY EM ARQUIVO ABERTO GERA ERRO.

Enviado: 12 Abr 2016 às 18:11
por FelipeGualberto
Rubens,
No seu caso, se você fizer a consulta SQL usando o VBA, conseguirá obter os dados. No entanto, recomenda-se fortemente não realizar consultas SQL em pastas de trabalho abertas do Excel, somente em fechadas.
Mesmo que após você realizar a consulta e consumir dados e fechar os recordsets, conexões e atribuí-los a Nothing, você corre risco de ter vazamento de memória no Excel e, aleatoriamente, causar um crash nas horas sucessivas, tornando sua ferramenta instável.
O mais recomendável é você utilizar o método SaveCopyAs para salvar uma cópia temporária da pasta de trabalho e realizar a consulta nela utilizando a biblioteca ADO.

Consulta através do msquery em arquivo aberto gera erro

Enviado: 13 Abr 2016 às 08:12
por RubensOliveira
Bom dia, Felipe!
Muito agradecido pela pronta resposta. Nã verdade eu já faço a cópia do arquivo que uso como base de dados para consulta, porém, queria acelerar a consulta ja que a rotina de copia demora um pouco, porém, sua resposta fui muito útil, pois ja venho experimentando alguns travamentos sem saber qual a causa. Muito obrigado e considero a sua resposta satisfatória. Vou abandonar a consulta ao arquivo e continuar a consultá-lo da cópia.