none
Comando macro access que exportar para Excel subscrevendo arquivo existente. RRS feed

  • Pergunta

  • Olá pessoal, preciso de uma ajuda!

    Tenho uma macro em meu access que exporta para o excel, até aí tudo bem, porém, toda que vez que executo e já existe o arquivo com o mesmo nome na pasta de destino e aparece um mensagem se desejo subscrever o arquivo.

    Pergunta, existe algum comando na própria macro que desliga isso, ou seja, sempre irá subscrever?

    Gostaria que se comportasse da mesma forma quando usamos o SetWarning > Warnings On = N.

    Podem me ajudar?

    Obrigado

    quinta-feira, 9 de agosto de 2018 12:47

Respostas

  • Faça o seguinte:

    Abre seu banco access.

    Pressione Alt +F11.

    A Janela do Visual Basic será aberta.

    Na Barra de Ferramentas vá em Inserir, depois em Módulo.

    Cole o método abaixo e adapte-o ao seu caminho:

    Public Function apagar()

    On Error Resume Next Kill "C:\Users\Natan\Desktop\NomeDaSuaPasta\NomeDaSuaPlanilha.xlsx" End Function

    Agora vá na sua Macro.

    Insira uma nova ação ExecutarCódigo antes da Ação OpenQuery [EDIT] pode estar como AbrirConsulta.

    Mais abaixo em Nome da função escreva apagar()

    Salve sua Macro.

    Pronto, ao executar o arquivo será apagado antes.

    Abraço!


    Natan


    • Editado 'Natan Silva quinta-feira, 9 de agosto de 2018 17:30
    • Marcado como Resposta BetoKlein sexta-feira, 10 de agosto de 2018 12:59
    quinta-feira, 9 de agosto de 2018 17:29

Todas as Respostas

  • Beto

    Inclua no seu método o trecho abaixo, ele irá apagar o arquivo caso ele exista, dessa forma não haverá o questionamento para subscrever.

    Kill "C:\Users\Natan\Desktop\NomeDaPastaDestino\NomeDaSuaPlanilha.xlsx"

    Abraço!


    Natan

    quinta-feira, 9 de agosto de 2018 12:54
  • Olá Natan, obrigado pelo retorno!

    Quando vc fala método, vc quer dizer na linha de Output File na janela de macro? 

    Output File:    Kill C:\Users\kleinro\Projects\e-Social\On Going\Verificar_S_2005_S_2206_S_2306.xlsx

    Se for isso, ele não reconhece, pois apresenta um erro.

    Muito Obrigado

    quinta-feira, 9 de agosto de 2018 13:21
  • Beto,

    Não nesse bloco, antes dele.

    Poste a macro completa aqui, aí te digo exatamente onde colocar.


    Natan

    quinta-feira, 9 de agosto de 2018 14:41
  • Natan, infelizmente como o fórum não me permite anexar imagens, transcrevi exatamente  como visualizo na tela de desing da macro. Espero que seja o isso que vc espera.

    Obrigado de novo

    ****************************************

    OpenQuery
    Query Name      Sumario Eventos
    View                 Datasheet
    Data Mode         Edit

    ExportingWithFormating
    Object Type        Query
    Object Name       Verificar - S-2200 - S-2300
    Output Format    Excel Workbook (*.xlsx)
    Output File          C:\Users\kleinro\Projetos\e-Social\Eventos\Verificar_S_2200.xlsx
    Auto Start           No
    Template File
    Encoding
    Output Quality     Print

    QuitAccess
    Options               Save All

    ***************************************

    quinta-feira, 9 de agosto de 2018 16:50
  • Faça o seguinte:

    Abre seu banco access.

    Pressione Alt +F11.

    A Janela do Visual Basic será aberta.

    Na Barra de Ferramentas vá em Inserir, depois em Módulo.

    Cole o método abaixo e adapte-o ao seu caminho:

    Public Function apagar()

    On Error Resume Next Kill "C:\Users\Natan\Desktop\NomeDaSuaPasta\NomeDaSuaPlanilha.xlsx" End Function

    Agora vá na sua Macro.

    Insira uma nova ação ExecutarCódigo antes da Ação OpenQuery [EDIT] pode estar como AbrirConsulta.

    Mais abaixo em Nome da função escreva apagar()

    Salve sua Macro.

    Pronto, ao executar o arquivo será apagado antes.

    Abraço!


    Natan


    • Editado 'Natan Silva quinta-feira, 9 de agosto de 2018 17:30
    • Marcado como Resposta BetoKlein sexta-feira, 10 de agosto de 2018 12:59
    quinta-feira, 9 de agosto de 2018 17:29
  • Perfeito Natan.

    Pessoas como Você, fazem a diferença. Extremamente simples e didático.

    Super Obrigado de Verdade!

    quinta-feira, 9 de agosto de 2018 18:44
  • Que Bom que deu certo!

    Não esqueça de Marcar como Resposta!

    Abraço!


    Natan

    • Marcado como Resposta BetoKlein sexta-feira, 10 de agosto de 2018 12:58
    • Não Marcado como Resposta BetoKlein sexta-feira, 10 de agosto de 2018 12:59
    quinta-feira, 9 de agosto de 2018 18:55
  • Boa Tarde Natan.

    Preciso de sua ajuda novamente, caso possa.

    Tenho uma consulta access que gera um layout no formato texto - CSV (separado por ponto e virgulas), exemplo:

    ID;NOME;ADMISSAO;DESLIGAMENTO
    9020206;ELISABETE DO NASCIMENTO SILVA;20/08/2001;
    9020213;MAIRA MONTANINI SILVA;20/08/2001;
    9020216;MARLI RAMALHO SILVA;20/08/2001;14/11/2017

    Quando exporto para txt via barra de comando External Data > Text File, funciona perfeitamente como no exemplo, porém quando faço via comando macro ExportWithFormatting, com o Output Format: Text Files (*.txt), o resultado fica assim no texto:

    ----------------------------------------------------------------------
    | ID;NOME;ADMISSAO;DESLIGAMENTO                                 |
    ----------------------------------------------------------------------
    | 9020206;ELISABETE DO NASCIMENTO SILVA;20/08/2001;   |
    ----------------------------------------------------------------------
    | 9020213;MAIRA MONTANINI SILVA;20/08/2001;                 |
    ----------------------------------------------------------------------
    | 9020216;MARLI RAMALHO SILVA;20/08/2001;14/11/2017   |
    ----------------------------------------------------------------------

    Por favor, como faço para exportar de forma limpa?

    Obrigado de novo!

    Beto

    segunda-feira, 13 de agosto de 2018 18:51
  • Aí eu teria que ir testando as opções... mas provavelmente você deve escolher outro formato e não .txt.


    Natan

    terça-feira, 14 de agosto de 2018 10:36
  • Já fiz todas as combinações possíveis e nada.

    As opções disponíveis são essas:

    Excel 97 - Excel 2003 Workbook (*.xls)
    Excel Binary Workbook (*.xlsb)
    Excel Workbook (*.xls)
    HTML (*.htm; *.html)
    Microsoft Excel 5.0/95 Workbook (*.xls)
    PDF Format (*.pdf)
    Rich Text Format (*.rtf)
    Text Files (*.txt)
    XPS Fomart (*.xps)

    A única que acredito que se encaixa seria a Text Files mesmo.

    obrigado

     

    terça-feira, 14 de agosto de 2018 12:54
  • Beto...

    manda um print de como você está fazendo para [email removido]

    vou dar uma testada aqui.


    Natan


    • Editado 'Natan Silva terça-feira, 14 de agosto de 2018 16:11
    terça-feira, 14 de agosto de 2018 14:05
  • Enviado...

    Obrigado pela ajuda

    terça-feira, 14 de agosto de 2018 14:34