MaximoAccess

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

Obrigado

Administração do MaximoAccess


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.

Obrigado

Administração do MaximoAccess

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

    Interface entre excel e word(mala-direta) via vba

    avatar
    Jefferson Inácio
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1
    Registrado : 25/09/2015

    Interface entre excel e word(mala-direta) via vba Empty Interface entre excel e word(mala-direta) via vba

    Mensagem  Jefferson Inácio Sex 25 Set 2015, 04:26

    Ola, sou novato por aqui e ainda aprendendo os segredos do VBA... Desculpem, sei que não é o lugar certo, mas estava tentando fazer no Access e acabei passando para o Excel.

    Criei uma mala direta num documento Word que receberá dados de uma planilha do Excel. Quando abro o documento word manualmente recebo a seguinte mensagem "Quando este documento for aberto o seguinte comando SQL sera executado: SELECT*FROM `Exportar`" ao clicar em sim, os dados atualizam perfeitamente. Criei um código no Excel(VBA) para abrir o arquivo logo apos efetuar a transferência de dados, ao executar esse código o documento Word abre, então não recebo mais a mensagem acima mas resolvi depurar o código, então o código mostra essa janela (Captura 1), eu dando ok, ele abre o Word, mas dá erro dizendo que o Word não pode abrir a fonte de dados (Captura2) e marca na depuração, a área em amarelo no código (Captura 3).

    Não quero que abra essa caixa na Captura 2 e gostaria de saber se alguém saber desse da Captura 3.

    Segue o código atual que estou usando para abrir o documento:



    Private Sub BOTÃO_ABRIR_Click()

    'Com este pequeno trecho de código , criamos uma instância para o objeto Word e depois usando VBA
    'abrimos o documento Novo Contrato Jeff's Festas.docx que esta no diretório C:\Users\Jeff's\Desktop\Novo Contrato\Novo Contrato Jeff's Festas.docx

    'Dim word As New word.Application

    'With word
    '   .Documents.Open "C:\Users\Jeff's\Desktop\Novo Contrato\Novo Contrato Jeff's Festas.docx"
    '   .Visible = True
    '   .WindowState = wdWindowStateMaximize
    'End With

    'Fechamos a tela Sucesso

       Dim wd As Object
       Dim wdocSource As Object
       Dim strWorkbookName As String

       On Error Resume Next
       Set wd = GetObject(, "Word.Application")
       If wd Is Nothing Then
           Set wd = CreateObject("Word.Application")
       End If
       On Error GoTo 0

       Set wdocSource = wd.Documents.Open("C:\Users\Jeff's\Desktop\Novo Contrato\Novo Contrato Jeff's Festas.docx")

       strWorkbookName = ThisWorkbook.Path & "\" & ThisWorkbook.Name

       wdocSource.MailMerge.MainDocumentType = wdFormLetters

       wdocSource.MailMerge.OpenDataSource _
               Name:=strWorkbookName, _
               AddToRecentFiles:=False, _
               Revert:=False, _
               Format:=wdOpenFormatAuto, _
               Connection:="Data Source=" & strWorkbookName & ";Mode=Read", _
               SQLStatement:="SELECT * FROM `BancodeCadastro$`"


       With wdocSource.MailMerge
           .Destination = wdSendToNewDocument
           .SuppressBlankLines = True
           With .DataSource
               .FirstRecord = wdDefaultFirstRecord
               .LastRecord = wdDefaultLastRecord
           End With
           .Execute Pause:=False
       End With

       wd.Visible = True
       wdocSource.Close SaveChanges:=False

       Set wdocSource = Nothing
       Set wd = Nothing

    End Sub


    SEGUEM AS IMAGENS:

    Interface entre excel e word(mala-direta) via vba Rr390p
    Interface entre excel e word(mala-direta) via vba Sq359g
    Interface entre excel e word(mala-direta) via vba Ajo7l2

      Data/hora atual: Qui 04 Mar 2021, 18:45