bollywood actresses hair loss hair rehab london contact number cheap hair extensions brazilian curly hair with closure hair extension fails human hair wigs black ponytail hairstyles 2018 sunny hair extensions uk hair extensions remy hair extensions weft koko one piece hair extensions clip hair
Preencher tabela de arquivo Word, através do Microsoft Access

... Assinatura do site por 1 ano + Kit MontaRibbons + 3 Livros em PDF + Diversas Revistas (pdf) de brinde, por apenas R$100,00
(
podendo parcelar em até 10 vezes no cartão de crédito)...

Clique aqui e obtenha mais detalhes do nosso kit completo e de como comprar.


Preencher tabela de arquivo Word, através do Microsoft Access

Antes de iniciar sua leitura, clique aqui e cadastre-se para receber comunicados sobre novos artigos.

No arquivo exemplo DESTE artigo tem uma carta modelo (tabelModelo.docx) que possui uma tabela a ser preenchida. Observe na imagem abaixo:

Usando Access - Tabela Word

A tabela em questão será preenchida pelo Access, utilizando as propriedades table(n), Cells() e Rows() do método ActiveDocument.  Preste atenção no seguinte código:

Private Sub btGerarDocLista_Click()
Dim wdApl As Object
Dim strLocal As String
Dim rs As DAO.Recordset
Dim strSql As String

Set wdApl = CreateObject("Word.Application")
'--------------------------
'Abre o arquivo do Word
'--------------------------
wdApl.Documents.Open FileName:=CurrentProject.Path & "\ModeloTabela.dotx"
With wdApl
'Posiciona o cursor no INDICADOR I1 e preenche com o nome do estado
.ActiveDocument.Bookmarks("I1").Select: .Selection.Text = "Rio de Janeiro"
'Posiciona o cursor no INDICADOR I2 e preenche com a data de hoje
.ActiveDocument.Bookmarks("I2").Select
.Selection.Text = Nz(Format(Date, "dd \de mmmm \de yyyy"))
'-------------------------------------------
'Monta consulta com os campos desejados
'-------------------------------------------
strSql = "SELECT dataVencimento,Descriminação,valorDoc FROM tblAtrasados "
strSql = strSql & "WHERE idCliente = 1 ORDER BY DataVencimento,Descriminação;"
'----------------------------
'Abre o recordset da consulta
'-----------------------------
Set rs = CurrentDb.OpenRecordset(strSql, 8)
'----------------------------------------
'Percorre todos os registros da consulta
'----------------------------------------
Do While Not rs.EOF
    'posiciona o cursor na tabela    
    With .ActiveDocument.Tables(1)
        'posiciona o cursor na última linha da tabela 
        'e preenche as células(colunas)
        With .rows.Last
            .Cells(1).Range.Text = rs!dataVencimento
            .Cells(2).Range.Text = rs!descriminação
            .Cells(3).Range.Text = Format(rs!ValorDoc, "Currency")
        End With
        rs.MoveNext
        'Adiciona nova linha na tabela para novo preenchimento
        If Not rs.EOF Then .rows.Add
    End With
Loop
rs.Close
Set rs = Nothing
'---------------------------------------------------------
'Salva o documento preenchido no mesmo local do aplicativo
'----------------------------------------------------------
strLocal = CurrentProject.Path & "\Doc-Lista-" & Format(Now, "hhmmss") & ".doc"
.ActiveDocument.SaveAs strLocal ', Password:="123"
'------------------
'Fecha o documento
'------------------
.ActiveDocument.Close
'-------------
'Fecha o Word
'-------------
.Quit
End With
'Limpa a memória
Set wdApl = Nothing
'---------------------------------------------------------
'Abre o documento preenchido, para visualização e impressão
'---------------------------------------------------------
Application.FollowHyperlink strLocal
End Sub

Abra o formulário frmTeste2, do arquivo exemplo DESTE artigo, e clique no botão Gerar Doc Lista.  Observe abaixo, o arquivo gerado com a tabela preenchida:

Usando Access - Tabela Word

 

Bom estudo!


 

 


3 comentário(s)

Alexsandro   31/01/2018 07:37:46

Como acho a dica 75?

Avelino Sampaio   01/02/2018 02:36:47

Alexsandro,

obrigado pela observação. O texto já foi corrigido e criado um link para levar ao artigo em questão.


Alexsandro   03/02/2018 14:06:50

Muito Obrigado Avelino. Você como sempre, excelente!!


Envie seu comentário: