none
Macro Mala Direta - word RRS feed

  • Pergunta

  • Gostaria de saber se consegue me ajudar com um problema numa macro de mala
    direta no word.
    Não entendo nada de VBA, mas to tentando improvisar uma macro para gerar
    arquivos individuais no word.
    Tenho uma planilha com 2000 fornecedores e preciso fazer um modelo de
    contrato padrão para todos eles.
    copiei da internet a macro abaixo, e ela gera os arquivos individuais, mas
    não leva os dados dos fornecedores para os arquivos gerados.
    é como se ela processasse apenas os arquivos em pdf, mas não transporta os
    dados que estão na planilha para o arquivo da mala direta.
    será que consegue me ajudar?
    vide macro abaixo:

    Sub SalvarComoPDF()
    Dim qtde As Integer
    Dim nomeArquivo As String
    Dim registro As Integer

    'Set Mail Merge in the first register
    ActiveDocument.MailMerge.DataSource.ActiveRecord = wdFirstRecord

    'Mail Merge Count
    qtde = ActiveDocument.MailMerge.DataSource.RecordCount
    'arquivo = ActiveDocument.MailMerge.DataSource.FieldNames(1).Name

    'For to exportToPDF all registers "NomeDaColunaDaMalaDireta"
    For registro = 1 To qtde

        nomeArquivo =
    ActiveDocument.MailMerge.DataSource.DataFields("Prestador").Value


        ActiveDocument.ExportAsFixedFormat OutputFileName:= _
            "C:\Users\carlosferreira\Documents\1 - Cadastro Prestadores X
    Produtos\Mala Direta\" & nomeArquivo & ".pdf",
    ExportFormat:=wdExportFormatPDF, OpenAfterExport:=False,
    OptimizeFor:=wdExportOptimizeForPrint, Range:=wdExportAllDocument, From:=1,
    To:=1, _
            Item:=wdExportDocumentContent, IncludeDocProps:=True,
    KeepIRM:=True, _
            CreateBookmarks:=wdExportCreateNoBookmarks, DocStructureTags:=True,
    _
            BitmapMissingFonts:=True, UseISO19005_1:=False

        ActiveDocument.MailMerge.DataSource.ActiveRecord = wdNextRecord

        Next registro

        End

    End Sub
    sábado, 15 de outubro de 2016 11:56