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]Criar arquivo PDF Separadamente para cada registro e Salvar Diretamente em Pasta

    avatar
    rafaelsabino
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3
    Registrado : 14/01/2012

    [Resolvido]Criar arquivo PDF Separadamente para cada registro e Salvar Diretamente em Pasta Empty [Resolvido]Criar arquivo PDF Separadamente para cada registro e Salvar Diretamente em Pasta

    Mensagem  rafaelsabino em 10/5/2017, 07:56

    Bom dia Pessoal, já vi essa duvida em diversos posts e aqui está uma solução simples que pode ser implementado em qualquer projeto. Se você deseja Exportar um relatório em pdf para cada registro que tenha em seu bd, basta usar um comando de repetição atrelado ao limite de registros que tem em sua tabela, ou seja, quando a consulta SQL chegar ao ultimo registro, o comando de repetição para e a mensagem de que todos os arquivos foram exportados separadamente ao seu destino é exibida. Espero que ajudem vocês, eu fiquei quebrando a cabeça muito tempo na internet atras de uma simples solução. Bom estudos.

    Private Sub Ativar_desativar_Relatorios_Sepados_Click()
    Dim strArquivo As String
    Dim strLocal As String
    Dim Soma As Integer
    Dim rs As Recordset
    Dim CDAssociado As String
    Dim Nome As String
    Dim Contador As Integer

    Set rs = CurrentDb.OpenRecordset("SELECT COUNT(*) AS TOTAL FROM Alunos")

    registro = rs!Total

    rs.Close

    Contador = 1
    Soma = 0

    Do While Contador <= registro

    Set rs = CurrentDb.OpenRecordset("SELECT [Alunos].[Cód_Aluno],[Alunos].[Descrição] FROM Alunos where [Alunos].[Cód_Aluno] = " & Contador & "")

               CDAssociado = rs!Cód_Aluno
               Nome = rs!Descrição
                 
                       'Abre o relatório devidamente filtrado e oculto
                       DoCmd.OpenReport "RptCad_Assoc", acViewPreview, , "Cód_Aluno=" & CDAssociado, acHidden
                       
                       strArquivo = "A.A.A.E.C.F.-" & CDAssociado & " - " & Nome & ".pdf"
                       strLocal = CurrentProject.Path & "\Relatorios\" & strArquivo
                       
                       'Gera arquivo pdf do relatório previamente aberto e filtrado.
                       DoCmd.OutputTo acOutputReport, "RptCad_Assoc", acFormatPDF, strLocal
                       
                       'Fecha o relatório
                       DoCmd.Close acReport, "RptCad_Assoc"
                               
        Soma = Soma + Contador
        Contador = Contador + 1
    Loop
         
    rs.Close

    strLocal = CurrentProject.Path & "\Relatorios"
    MsgBox "Todos os dados foram exportados com sucesso em: " & strLocal & ""

    End Sub

    Qualquer dúvida estou a disposição.

    Att,
    Rafael
    wellingtoneo
    wellingtoneo
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 292
    Registrado : 30/07/2012

    [Resolvido]Criar arquivo PDF Separadamente para cada registro e Salvar Diretamente em Pasta Empty Re: [Resolvido]Criar arquivo PDF Separadamente para cada registro e Salvar Diretamente em Pasta

    Mensagem  wellingtoneo em 10/5/2017, 13:14

    Ola amigo, muito bom o seu post!
    avatar
    jntrindade
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 273
    Registrado : 07/12/2009

    [Resolvido]Criar arquivo PDF Separadamente para cada registro e Salvar Diretamente em Pasta Empty Re: [Resolvido]Criar arquivo PDF Separadamente para cada registro e Salvar Diretamente em Pasta

    Mensagem  jntrindade em 10/5/2017, 15:18

    bom dia, estou precisando nesse sentido gerar arquivos no word se alguem tiver um codigo. Deve ser algo parecido com este codigo.

    Abrçs Jorge

      Data/hora atual: 26/5/2020, 11:38