MaximoAccess

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

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

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

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

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


3 participantes

    [Resolvido]Exportação para Excel

    avatar
    Josué Carvalho
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 39
    Registrado : 06/10/2015

    [Resolvido]Exportação para Excel Empty [Resolvido]Exportação para Excel

    Mensagem  Josué Carvalho 16/12/2015, 20:58

    Prezados,

    Preciso gerar uma planilha em Excel a partir de dados que tenho em Access. Esta planilha, por sua vez, será importada por outro aplicativo.
    Acontece que preciso que algumas colunas recebam como conteúdo um espaço em branco. Consigo gerá-la no Access mas quando exporto para a planilha, o espaço em branco é retirado e a célula fica vazia ocasionando erro de reconhecimento por parte do outro aplicativo.

    A consulta é formulada pelo seguinte código SQL

    Código:

    SELECT Tab_Requisição.Data, Tab_Requisição.Numero, Tab_Requisição.Numero, IIf([TipoMov]="Banco" And [Cheque]<>0,"Cheque Manual", String(1,Chr(32))) AS TipoPagoBanco, IIf([TipoMov]="Banco",[Cheque]," ") AS ExpCheque, Tab_PlanDeCuenta.TipoMov, IIf(Val([Conta])=11100 Or Val([Conta])=11600,[Cuenta],IIf(Val([Conta])=11200,[CuentaAplic],[Conta])) AS ExpConta, Tab_Requisição.Facility, Tab_ReqContab.Histórico, Tab_ReqContab.VlLancto, Tab_Requisição.CodAudit
    FROM Tab_Requisição INNER JOIN (Tab_PlanDeCuenta INNER JOIN Tab_ReqContab ON Tab_PlanDeCuenta.Rubrica = Tab_ReqContab.Conta) ON Tab_Requisição.Numero = Tab_ReqContab.Numero
    WHERE (((Tab_Requisição.Flag1)=False) AND ((Tab_Requisição.Tipo)<>"Activo"));

    Já tentei usar o espaço entre aspas, a função Chr sozinha e a expressão string como está ai. Na exportação, o conteúdo da célula é vazio.
    Alguém pode de dar uma luz?
    good guy
    good guy
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1304
    Registrado : 05/02/2010

    [Resolvido]Exportação para Excel Empty Exportação para Excel

    Mensagem  good guy 17/12/2015, 13:01

    Olá Josué,

    Já tentou inserir um símbolo qualquer no espaço entre aspas para facilitar a exportação e depois retirá-lo ou na string SQL antes da importação usar uma função Replace que substitua o símbolo por um espaço vazio? Na importação só fica o espaço vazio. É uma dica !!!

    Replace(NomedoCampo,"*","")
    avatar
    Josué Carvalho
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 39
    Registrado : 06/10/2015

    [Resolvido]Exportação para Excel Empty Re: [Resolvido]Exportação para Excel

    Mensagem  Josué Carvalho 21/12/2015, 12:19

    Olá good guy! Obrigado pela sua atenção.

    Não sei se entendi plenamente sua resposta. Ela traz duas propostas:

    1) Inserir um simbolo e retirá-lo depois. Essa funciona, mas eu gostaria de outra solução que já gerasse o arquivo limpo, para ser importado pelo outro aplicativo.

    2) Em qualquer tabela ou consulta, o espaço em branco aparece com exatidão. Contudo, é na passagem para o excel que ele é substituido. Então, não importa o que eu faça para gerá-lo no ambiente Access, pq qdo migra ele aplica a regra e some com a informação ...

    Mesmo assim, valeu mto pela dica!
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Exportação para Excel Empty Re: [Resolvido]Exportação para Excel

    Mensagem  JPaulo 21/12/2015, 12:42

    Ola;

    Uma pergunta;

    Que comando está a usar para exportar a consulta para o Excel ?


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

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Exportação para Excel Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Exportação para Excel Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Exportação para Excel Folder_announce_new Instruções SQL como utilizar...
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Exportação para Excel Empty Re: [Resolvido]Exportação para Excel

    Mensagem  JPaulo 21/12/2015, 13:27

    Minha sugestão;

    1º Fazer uso da função interna Space, dentro dela define-se a quantidade de espaços que se pretende;

    Código:
    SELECT Tab_Requisição.Data, Tab_Requisição.Numero, Tab_Requisição.Numero, IIf([TipoMov]="Banco" And [Cheque]<>0,"Cheque Manual", Space(1) AS TipoPagoBanco, IIf([TipoMov]="Banco",[Cheque]," ") AS ExpCheque, Tab_PlanDeCuenta.TipoMov, IIf(Val([Conta])=11100 Or Val([Conta])=11600,[Cuenta],IIf(Val([Conta])=11200,[CuentaAplic],[Conta])) AS ExpConta, Tab_Requisição.Facility, Tab_ReqContab.Histórico, Tab_ReqContab.VlLancto, Tab_Requisição.CodAudit
    FROM Tab_Requisição INNER JOIN (Tab_PlanDeCuenta INNER JOIN Tab_ReqContab ON Tab_PlanDeCuenta.Rubrica = Tab_ReqContab.Conta) ON Tab_Requisição.Numero = Tab_ReqContab.Numero
    WHERE (((Tab_Requisição.Flag1)=False) AND ((Tab_Requisição.Tipo)<>"Activo"));

    2º Ao pressionar de um botão no seu formulario, (se não tiver formulario, crie um apenas com um botão para exportar);

    Código:
    Private Sub SeuBotão_Click()
    'JPaulo
    'MaximoAccess
    '21-Dezembro-2015
    Dim rst As DAO.Recordset, strSQL As String, strLivro As String, xls As Object
    Set xls = CreateObject("Excel.Application")
        'caminho completo do seu excel que já deve existir
        'neste caso coloquei o meu excel junto do banco
        strLivro = CurrentProject.Path & "\SeuLivro.xlsx"
        xls.Workbooks.Open (strLivro)
        xls.Visible = True
        xls.Worksheets("Sheet1").Activate
        strSQL = "SELECT * FROM SuaConsulta;"
    Set rst = CurrentDb.OpenRecordset(strSQL, dbOpenDynaset)
        xls.ActiveSheet.Range("A1").Select
        xls.ActiveCell.CopyFromRecordset rst
        xls.ActiveWorkbook.Save
        xls.Application.Quit
    Set xls = Nothing
    End Sub

    Aguardamos o seu retorno;


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

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Exportação para Excel Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Exportação para Excel Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Exportação para Excel Folder_announce_new Instruções SQL como utilizar...
    avatar
    Josué Carvalho
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 39
    Registrado : 06/10/2015

    [Resolvido]Exportação para Excel Empty Re: [Resolvido]Exportação para Excel

    Mensagem  Josué Carvalho 23/12/2015, 06:52

    Ola!

    Eu tive um problema com esta solução que foi o seguinte: Depois que abre a planilha a executa o activate, o controle é passado para ela e o restante do código não é executado, portanto, não cola as informações. (Se errei no motivo, dou certeza de que o resultado foi este).

    Mas essas linhas de código abriram um leque de possibilidades para outras rotinas que precisarei desenvolver. Então, foi ótimo da mesma forma.

    Quanto a solução para o problema apresentado, acabei adotando a de usar outro caractere que não o espaço, uma vez que o comando de exportação é implacável em não aceita espaços em branco.

    Agradeço a ajuda de todos e parabenizo aos organizadores e mantenedores deste forum.
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Exportação para Excel Empty Re: [Resolvido]Exportação para Excel

    Mensagem  JPaulo 23/12/2015, 10:21

    Fico feliz.

    Obrigado pelo retorno o forum agradece.

    Neste Natal ajude...





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

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Exportação para Excel Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Exportação para Excel Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Exportação para Excel Folder_announce_new Instruções SQL como utilizar...

    Conteúdo patrocinado


    [Resolvido]Exportação para Excel Empty Re: [Resolvido]Exportação para Excel

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 28/3/2024, 21:31