Página 1 de 1

[RESOLVIDO] Access Exportar PDF em arquivos separados

Enviado: Qui Abr 30, 2020 8:24 am
por cy_rangel
Bom dia pessoal!

Estou com uma dificuldade, tenho um relatório no Access com mais de 30 páginas e gostaria de saber como faço para exportar em PDF os arquivos separados e renomeados de acordo com um campo específico.

Já procurei muito em diversos fóruns mas não consegui achar como fazer e não gostaria de salvar um por um :cry:

Desde já agradeço.

Att
Cy Rangel.

Re: [RESOLVIDO] Access Exportar PDF em arquivos separados

Enviado: Sex Mai 01, 2020 12:56 am
por cy_rangel
Pessoal,

Novamente encontrei a solução. Segue abaixo caso mais alguém precise:

1) Necessário criar um Form para consulta do Relatório;
2) Ter um campo que não se repete para ser utilizado como filtro e que ambos estejam no Form e no Relatório;
3) Dentro do relatório, acessar as propriedades centrais e no campo que servirá como filtro, fazer a correspondência ao formulário (no link do video, mostra passo a passo).

Segue o vídeo onde eu aprendi como fazer e logo após o código completo:

https://www.youtube.com/watch?v=FBYUyKMRxeI

No modo Design, clique em cima do botão, ir em evento, "Ao Clicar", clique nos 3 pontinhos, Construtor de Códigos., cole o código a seguir e faça as adaptações nos respectivos campos de acordo com o seu relatório e formulário.

Código: Selecionar todos

Private Sub Btn_SalvarPDF_Click()

    DoCmd.OpenReport "Insira o nome do seu relatório", acViewPreview

    Dim strArquivo As String 'Variável que determina o nome do arquivo
    Dim strLocal As String 'Variável que determina o local do arquivo
    
    strArquivo = "Nome do arquivo" & ".pdf" 'Chama a primeira variável nome do arquivo
    strLocal = CurrentProject.Path & "\Nome da pasta onde quer salvar o arquivo\" & strArquivo 'Chama a segunda variável Local e concatena com o nome do arquivo
    
    DoCmd.OpenReport "Insira o nome do seu relatório", acViewPreview, , "Nome do campo=" & Me!Nome do Campo, acHidden 'Abre o relatório devidamente filtrado e oculto. O primeiro nome do campo é do Formumário Fonte do controle e o 2º Me!Nome do Campo é do Formulário campo "Nome".
    DoCmd.OutputTo acOutputReport, "Insira o nome do seu relatório", acFormatPDF, strLocal
    DoCmd.Close acReport, "Insira o nome do seu relatório" 'Fecha o relatório
    
    
    MsgBox "Relatório Salvo com Sucesso:" & " " & strLocal 'msn final e mostra o local em que o arquivo foi salvo

End Sub