MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

Obrigado

Administração do MaximoAccess

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    [Resolvido]Exportar um Select variavel do formulario para Excel

    Compartilhe

    Marcio2501
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 24
    Registrado : 24/10/2016

    [Resolvido]Exportar um Select variavel do formulario para Excel

    Mensagem  Marcio2501 em 18/5/2018, 21:51

    Ola amigos, tudo bem?

    Estou tentando fazer um exporte de dados de uma consulta do Access para o Excel, através de um formulário que montei e contem dois botoes txtExtracao e Comando239.

    O txtExtracao contem "na origem da linha"  uma select de uma tabela que nada mais é as views criadas para extração.
    o comando é o botão que contem o código da ação para extração da base.

    Tentei o seguinte código no evento click:
    Código:
    Private Sub Comando239_Click()

    strConsulta = "SELECT * FROM" & " " & txtExtracao.Value

    strNomePLanilha = "C:\Users\marciossa\Desktop\backup\Mailings\Envio\SMS\teste.xlsm"
    DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExce19, strConsulta, strNomePLanilha

    MsgBox "Tabela Exportada com Sucesso!"
    End Sub


    Acontece que ele dá um erro" Erro em tempo de execução '3011' O Mecanismo do banco de dado não pode encontrar o objeto 'Select * FROM SMS'. Verifique se o objeto existe...."

    Se coloco um nome fixo na consulta ele funciona, minha duvida é como usar o valor do txt (Caixa de controle do formulario)...


    Quem me ajudar agradeço.

    Abraço.
    avatar
    JPaulo
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 9985
    Registrado : 04/11/2009

    Re: [Resolvido]Exportar um Select variavel do formulario para Excel

    Mensagem  JPaulo em 22/5/2018, 10:32

    Olá;

    Repare que a sua instrução está assim;

    Código:
    SELECT * FROM" & " " & txtExtracao.Value

    Isto quer dizer que vai fazer um SELECT a uma tabela cujo nome está no txtExtracao.Value.

    Imagine que o resultado dessa caixa de texto é "tblTeste";

    O seu SELECT no final fica assim;

    Código:
    SELECT * FROM tblTeste"

    Mas isto não é uma consulta exportável.

    Para que tudo funcione, você terá de criar uma consulta temporaria, como por exemplo;

    Código:
    Private Sub Comando239_Click()
    Dim qdf As DAO.QueryDef
    'cria uma consulta temporaria
    Set qdf = CurrentDb.CreateQueryDef("ConsultaTemporaria", "SELECT * FROM " & txtExtracao.Value)
    'exporta a consulta temporaria
    strNomePLanilha = "C:\Users\marciossa\Desktop\backup\Mailings\Envio\SMS\teste.xlsm"
    DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExce19, ConsultaTemporaria, strNomePLanilha
    'dá mensagem ou não
    MsgBox "Tabela Exportada com Sucesso!"
    'em caso de erro ao apagar a consulta temporaria, usamos o On Error Resume Next
    On Error Resume Next
    'apaga a consulta temporaria
    CurrentDb.QueryDefs.Delete "ConsultaTemporaria"
    End Sub


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver este link.]

    Sucesso e Bons Estudos
    Success and Good Studies

    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]

    Marcio2501
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 24
    Registrado : 24/10/2016

    Re: [Resolvido]Exportar um Select variavel do formulario para Excel

    Mensagem  Marcio2501 em 25/6/2018, 14:05

    Obrigado JPaulo, eu havia achado uma solução na net que adaptei pra minha necessidade usando esse código abaixo, acabei vendo agora q vc respondeu. Muito obrigado, vou marcar como resolvido.

    Usei uma tabela de referencia para preencher a txtExtracao, e a parti dela peguei o .value dela pra montar na consulta. e Daí a linha DoCmd para extração exatamente igual a sua.


    'Private Sub ComandoBtn_Click()

    On Error GoTo Err_Comando0_Click
    'Declarei as variáveis strConsulta e strNomePlanilha
    Dim strConsulta, strNomePLanilha

    'Na variável strConsulta eu informei o nome exato da minha consulta
    strConsulta = txtExtracao.Value


    'Na varivável strNomePlanilha eu informei o local e o nome do arquivo a ser gerado.
    strNomePLanilha = "C:\Users\marciossa\Desktop\backup\Mailings\Envio\SMS\Base.xlsm"

    'Aqui foi montado a expressao que faz exportar a cunsulta em um arquivo de excel.
    DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, strConsulta, strNomePLanilha

    MsgBox "extraído com sucesso"

    Exit_Comando0_Click:
    Exit Sub

    Err_Comando0_Click:
    MsgBox Err.Description
    Resume Exit_Comando0_Click



    End Sub'







    avatar
    JPaulo
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 9985
    Registrado : 04/11/2009

    Re: [Resolvido]Exportar um Select variavel do formulario para Excel

    Mensagem  JPaulo em 25/6/2018, 14:24

    Fico feliz.

    Obrigado pelo retorno o forum agradece.


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver este link.]

    Sucesso e Bons Estudos
    Success and Good Studies

    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]

      Data/hora atual: 19/8/2018, 00:33