[resolvido] Exportar Consulta para Excel de Duas formas

Moderador: Avelino Sampaio

pcmilk
Mensagens: 33
Registrado em: 30 Dez 2016, 09:43
Localização: Rio de Janeiro

[resolvido] Exportar Consulta para Excel de Duas formas

Mensagempor pcmilk » 31 Mar 2017, 21:01

Boa noite!

Tenho um código que está funcionando, porém, o único problema que está acontecendo é um Erro em tempo de execução '53':

Erro em tempo de exceução '53':
O arquivo não foi localizado

Mas ainda assim, ele cria o arquivo! Até aí, tudo bem...

Como posso consertar o erro ou tratá-lo para que não apareça mais? Não tenho a menor ideia...

Segue o código:
==============

Código:
'CÓDIGO QUE GERA A PLANILHA USANDO DUAS FORMAS DIFERENTES (ESCOLHER UMA SOMENTE)!
Private Sub BTN_PLAN_DATA_ATUAL_Click()

Dim objExcel As Object
Dim strPlanilha As String

Msg = "Deseja Exportar dados para o Excel?"

If MsgBox(Msg, vbQuestion + vbYesNo, "Confirme") = vbYes Then

'OPÇÃO 1: ABRINDO O ARQUIVO (Se você usar este método, tire o comentário das duas últimas
'linhas deste trecho e comente as duas últimas da OPÇÃO 2)
'Indica o local e o nome do arquivo exportado
'strPlanilha = "C:\EXPORTADOS\" & "QuantidadeDeRegistrosAteDataAtual" & ".xls"
'DoCmd.OutputTo acOutputQuery, "CNS CADASTROS MENSAL ATÉ DIA ATUAL", acFormatXLS, strPlanilha, 0

'OPÇÃO 2: ABRINDO A PASTA
'Indica o local e o nome do arquivo exportado
strPlanilha = "C:\EXPORTADOS\" & "QuantidadeDeRegistrosAteDataAtual" & "-" & Format(Date, "dd-mm-yyyy") & "" & Format(Now, "hhmmss") & ".xls"
DoCmd.OutputTo acOutputQuery, "CNS CADASTROS MENSAL ATÉ DIA ATUAL", acFormatXLS, strPlanilha, 0

'Cria o objeto
Set objExcel = CreateObject("Excel.Application")

'Esconde o arquivo
objExcel.Visible = False

'Cria o arquivo
With objExcel
.Workbooks.Open (strPlanilha)
'.Selection.AutoFilter 'Já cria um auto-filtro na planilha Excel
'.Range("A1").Select
.Workbooks(1).Close SaveChanges:=True
.Quit

'Abre o arquivo (OPÇÃO 1)
'MsgBox "Exportado com Sucesso...", vbInformation
'Shell "C:\Windows\explorer.exe""" & "C:\EXPORTADOS\" & "QuantidadeDeRegistrosAteDataAtual" & ".xls" & vbNormalFocus

'Abre o local de salvamento [pasta] (OPÇÃO 2)
MsgBox "Exportado com Sucesso...", vbInformation
Shell "C:\Windows\explorer.exe""" & "C:\EXPORTADOS\" & "", vbNormalFocus

End With

Set objExcel = Nothing

End If

End Sub

Disable adblock

Precisamos do seu apoio. Faca uma doacao para o site atraves do Paypal.


Avatar do usuário
Avelino Sampaio
Mensagens: 2101
Registrado em: 04 Jun 2015, 18:27
Contato:

Re: Exportar Consulta para Excel de Duas formas

Mensagempor Avelino Sampaio » 07 Abr 2017, 07:21

pcmilk,

altere esta linha:

Código:
Shell "C:\Windows\explorer.exe""" & "C:\EXPORTADOS\" & "", vbNormalFocus


para:

Código:
Shell "C:\Windows\explorer.exe C:\EXPORTADOS\", vbNormalFocus


Aguardamos
==================================================
Clique no link abaixo e veja um ótimo kit de ensino que tenho para você.
http://www.usandoaccess.com.br
==================================================

pcmilk
Mensagens: 33
Registrado em: 30 Dez 2016, 09:43
Localização: Rio de Janeiro

Re: Exportar Consulta para Excel de Duas formas

Mensagempor pcmilk » 07 Abr 2017, 13:58

Ok! Funcionou perfeitamente!

Fiz algumas alterações no código, deixando somente a opção que, após exportar, abre a Pasta pelo Windows Explorer!

‘=====================================================================================
'CÓDIGO QUE EXPORTA UMA CONSULTA PARA UMA PLANILHA, DENTRO DE UMA DETERMINADA PASTA:

‘NOME_DO_ARQUIVO_DESEJADO => É o nome que você deseja no arquivo final do Excel;
‘NOME_DA_SUA_CONSULTA => É o nome da sua Consulta no sistema.
‘=====================================================================================
Private Sub BTN_PLAN_DATA_ATUAL_Click()

Dim objExcel As Object
Dim strPlanilha As String

Msg = "Deseja Exportar os Dados para o Excel?"

If MsgBox(Msg, vbQuestion + vbYesNo, "Confirme") = vbYes Then

'Indica o Local e o Nome do arquivo exportado:
strPlanilha = "C:\EXPORTADOS\" & "NOME_DO_ARQUIVO_DESEJADO" & "__Data(" & Format(Date, "dd-mm-yyyy") & ")__Hora(" & Format(Now, "hh.mm.ss") & ").xls"
DoCmd.OutputTo acOutputQuery, "NOME_DA_SUA_CONSULTA", acFormatXLS, strPlanilha, 0

'Cria o objeto
Set objExcel = CreateObject("Excel.Application")

'Esconde o arquivo
objExcel.Visible = False

'Cria o arquivo
With objExcel
.Workbooks.Open (strPlanilha)
'.Selection.AutoFilter 'Já cria um auto-filtro na planilha Excel
'.Range("A1").Select
.Workbooks(1).Close SaveChanges:=True
.Quit

‘Abre o Local do arquivo gerado no Windows Explorer
MsgBox "Os Dados foram Exportados com Sucesso!...", vbInformation
Shell "C:\Windows\explorer.exe C:\EXPORTADOS\", vbNormalFocus
End With

Set objExcel = Nothing
End If
End Sub


Muito obrigado!!

Disable adblock

Precisamos do seu apoio. Faca uma doacao para o site atraves do Paypal.



Voltar para “Consultas”

Quem está online

Usuários neste fórum: Nenhum usuário registrado e 2 visitantes