terça-feira, 24 de fevereiro de 2015

Editando documentos no Word através do Excel + Cadastro de Contratos



Nesse Tutorial mostro como interagir o Excel com o Word para edição de documentos... 
Através de um formulário para cadastramento de contratos de aluguel demostro como fazer essa interação, criando novos documentos a partir de um modelo editado no Word.

A planilha mostrada no vídeo abaixo vai permitir a substituição de elementos pré-determinados no documento, no caso, utilizei o # antes do nome dos elementos para que o código localize esse elemento e faça a substituição diretamente no WORD.

Abaixo trecho do código que permite fazer essa substituição: Macro btn_montar_contrato

Private Sub btn_montar_contrato_Click()

    Dim WORD As WORD.Application
    Dim DOC As WORD.Document
    
    Set WORD = CreateObject("Word.Application")
    WORD.Visible = True
    
    Set DOC = WORD.Documents.Open("C:\Teste\contrato_modelo.docx")
    
    With DOC
        '*Dados locador
        .Application.Selection.Find.Text = "#LOCADOR"
        .Application.Selection.Find.Execute
        .Application.Selection.Range = UCase(Me.txt_razao)
        
        .Application.Selection.Find.Text = "#RG_LOCADOR"
        .Application.Selection.Find.Execute
        .Application.Selection.Range = txt_ie
               
        .Application.Selection.Find.Text = "#CPF_LOCADOR"
        .Application.Selection.Find.Execute
        .Application.Selection.Range = txt_cnpj
         
        '*Dados locatário
        .Application.Selection.Find.Text = "#LOCATARIO"
        .Application.Selection.Find.Execute
        .Application.Selection.Range = UCase(txt_nome_locatario)

.
.
.

End Sub

Os campos respectivos no dcumento #LOCADOR, #RG_LOCADOR serão substituídos pelos valores que estiverem nas caixas de texto txt.razao e txt_ie




link para download dos arquivos:

https://www.dropbox.com/s/q68zihhv01yqhyt/71%20-%20Preencher%20Contrato.rar?dl=0
*** Atenção: Editar no código o caminho onde salvará o modelo do contrato a ser editado para que funcione...

*** Em caso erro na Biblioteca da listview por falta da referência
      Segue link explicando como resolver o problema
     http://logicavba.blogspot.com.br/2013/10/como-ativar-o-controle-listview-no.html