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
Como preencher modelos do Word (dotx) com o Microsoft Access
Como preencher modelos do Word (dotx) com o Microsoft Access

Nota importante: para ter acesso aos vídeos e arquivos exemplos deste site, adquira um dos planos apresentados abaixo. Você pode comprar em até 2x no Cartão de Crédito. 

Veja como comprar e saiba mais sobre o material oferecido,  clicando aqui.

Open v3

 

Para preencher um documento do Word com dados do Access, utilizamos os INDICADORES (Bookmarks).  Posicione o cursor no local aonde deseja inserir o INDICADOR, vá na guia Inserir da ribbon e clique em INDICADOR.

Usando Access - INDICADORES Word

Dê um nome para o INDICADOR e clique no botão Adicionar.  Geralmente, eu numero o INDICADOR.

Usando Access - Lista Indicadores

Para visualizar os INDICADORES no documento, vá na guia Arquivo > Opções > Avançado > Marque Mostrar indicadores.

Usando Access - Mostrar Indicadores

Baixe o arquivo e faça o teste:

Clique aqui e baixe o arquivo exemplo. 

Abra o arquivo modelo oferecido (BookmarksModelo.dotx) e observe a posição dos INDICADORES que irão receber os dados:

Usando Access - INDICADORES (Bookmarks)

No aplicativo exemplo DocBookmarks.accdb, abra o formulário frmTeste e clique no botão Gerar Documento Word.

Usando Access - Gerar Documento Word

Observe, no arquivo gerado, os valores preenchidos nas posições dos INDICADORES.

Usando Access - Indicadores preenchidos

O código utilizado para gerar o documento foi este abaixo.  Atente para os comentários:

Private Sub brGerarDoc_Click()
Dim wdApl As Object
Dim strLocal As String
Set wdApl = CreateObject("Word.Application")
'--------------------------
'Abre o arquivo do Word
'--------------------------
wdApl.Documents.Open FileName:=CurrentProject.Path & "\BookmarksModelo.dotx" 
With wdApl
'--------------------------------------------------------------------
'Posiciona o cursor no INDICADOR I1 e preenche com a data do processo
'--------------------------------------------------------------------
.ActiveDocument.Bookmarks("I1").Select
.Selection.Text = Nz(Format(Me!DataProcesso, "dd \de mmmm \de yyyy"))
'-----------------------------------------------------------
'Posiciona o cursor no INDICADOR I2 e preenche com o assunto
'------------------------------------------------------------
.ActiveDocument.Bookmarks("I2").Select: .Selection.Text = Nz(Me!Assunto)
 
.ActiveDocument.Bookmarks("I3").Select: .Selection.Text = Nz(Me!Instituidor)
.ActiveDocument.Bookmarks("I4").Select: .Selection.Text = Nz(Me!Recorrente)
.ActiveDocument.Bookmarks("I5").Select: .Selection.Text = Nz(Me!Processo)
.ActiveDocument.Bookmarks("I6").Select: .Selection.Text = Nz(Me!Notificação)
.ActiveDocument.Bookmarks("I7").Select
.Selection.Text = Nz(Me!RecursoAdministrativo)
.ActiveDocument.Bookmarks("I8").Select: .Selection.Text = Nz(Me!Manifestação)
.ActiveDocument.Bookmarks("I9").Select: .Selection.Text = Nz(Me!Origem)
.ActiveDocument.Bookmarks("I10").Select: .Selection.Text = Nz(Me!Estudo)
.ActiveDocument.Bookmarks("I11").Select
.Selection.Text = Nz(Me!RecursoAdministrativo)
.ActiveDocument.Bookmarks("I12").Select: .Selection.Text = Nz(Me!Estudo)
'---------------------------------------------------------
'Salva o documento preenchido no mesmo local do aplicativo
'----------------------------------------------------------
strLocal = CurrentProject.Path & "\Doc-" & Nz(Replace(Me!Assunto, " ", ""))
strLocal = strLocal & "-" & 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

Caso deseje acrescentar senha ao documento gerado, basta acrescentar o argumento Password na seguinte linha:

.ActiveDocument.SaveAs strLocal, Password:="SuaSenha"

Bom estudo!


 

 


6 comentário(s)

Mauro George   14/07/2022 04:06:29

Bom dia Avelino, desde já agradeço por disponibilizar este código que é de grande valia.
Avelino, estou com a seguinte situação: tenho um campo no formulário que a origem é uma tabela de cadastro distinta, de modo que, quando eu gero o arquivo no word, está aparecendo apenas o código do campo e não as informações. Trata-se de um caixa de combinação.
Poderia me ajudar com esta questão?
Obrigado.

Glauco   01/11/2020 14:14:52

Quando aperto gerar documento do word não está salvando direto, ele abre uma caixa para nomear o arquivo do word e isso está travando o access.
Não teria como salvar direto com um nome qualquer, sem necessidade de abrir a caixa do word para nomear o arquivo????

Avelino Sampaio   14/07/2020 04:10:13

Mauro,

vc provavelmente está capturando a primeira coluna da caixa. Verifique se a informação desejada está na segunda coluna. Capture a segunda coluna assim:

me!NomeDaSuaCombo.column(1) 'aqui vc está capturando a segunda coluna da caixa

Sucesso!

Almir de Oliveira   26/09/2017 06:25:52

Excelente o tópico adorei, funcionou muito bem.

Avelino Sampaio   20/09/2017 03:13:00

Ramon,

se inscreva no nosso site e abra um tópico sobre o assunto. Informe a versão do seu Office.

http://www.redeaccess.com.br

Aguardamos

Ramon Lima Silva   19/09/2017 18:19:22

O documento abre e preenche o campo, mas quando vai salvar, ao inves de salvar automaticamente, aparece a janela de Salvar como do Word eu clico em salvar e depois disso dar erro em tempo de execução 4198.


Envie seu comentário: