Página 1 de 1

Macro Colar Do Excel No Word

Enviado: 01 Jun 2019 às 13:01
por AdrianoAugusto
Pessoal, peço ajuda nesse código, ele copia a célula ativa do Excel e cola no Word.

Gostaria de fazer três alterações e não estou conseguindo.

1 - O documento do Word tem que estar aberto, senão dá erro, gostaria de inserir uma mensagem para abrir um arquivo, caso não tenha nenhum aberto.

2 - O texto é colado sempre no final do arquivo do Word, gostaria que fosse colado onde se encontra o cursor do Word.

3 - Que o texto fosse colado no Word justificado.

Agradeço quem puder me ajudar.

Adriano

Public Sub CopyTableChartToOpenWordDocument()
Dim Word As Word.Application
Dim myText As Excel.Range
Application.ScreenUpdating = False
Application.EnableEvents = False
Set myText = ActiveCell
myText.Copy
Set Word = GetObject(, "Word.Application")
Word.Selection.EndKey Unit:=wdStory
Word.Selection.TypeParagraph
Word.Selection.PasteSpecial DataType:=wdPasteText
Set Word = Nothing
Application.CutCopyMode = False
End Sub

Macro Colar Do Excel No Word

Enviado: 23 Jun 2019 às 09:05
por thiagocarloss
Estou buscando algo parecido e não encontro. Preciso enviar arquivo do excel para o word mas ele deve ir formatado conforme escolha minha e não pegar a formatação do paragrafo em questão. Segue meu código para ver se te ajuda. Private Sub btnGeraContrato_Click()
Dim Word As Word.Application
Dim DOC As Word.document
Dim MODELO As String

Pasta = ThisWorkbook.Path

Set Word = CreateObject("Word.Application")
Word.Visible = True

MODELO = Pasta & "\Contratos\Contrato 1.docx"

Set DOC = Word.Documents.Open(MODELO)

With DOC
'*Dados fornecedor



.Application.Selection.Find.Text = "#FORNECEDOR"
.Application.Selection.Find.Forward = True
.Application.Selection.Find.Wrap = wdFindContinue
.Application.Selection.Find.Execute
.Application.Selection.Range = UCase(Me.TextBox1)

.Application.Selection.Find.Text = "#RUA"
.Application.Selection.Find.Forward = True
.Application.Selection.Find.Wrap = wdFindContinue
.Application.Selection.Find.Execute
.Application.Selection.Range = TextBox3

.Application.Selection.Find.Text = "#Cidade"
.Application.Selection.Find.Forward = True
.Application.Selection.Find.Wrap = wdFindContinue
.Application.Selection.Find.Execute
.Application.Selection.Range = TextBox5

.Application.Selection.Find.Text = "#UF"
.Application.Selection.Find.Forward = True
.Application.Selection.Find.Wrap = wdFindContinue
.Application.Selection.Find.Execute
.Application.Selection.Range = TextBox6


'*Dados locatário
.Application.Selection.Find.Text = "#LOCATARIO"
.Application.Selection.Find.Forward = True
.Application.Selection.Find.Wrap = wdFindContinue
.Application.Selection.Find.Execute
.Application.Selection.Range = UCase(txt_nome_locatario)


.Visible = True
.WindowState = wdWindowStateMaximize

End With

End Sub