VB 매크로를 사용하여 Excel (.xlsm)의 데이터를 사용하여 워드 문서 (.docm)의 생성을 자동화하려고합니다.VB에서 테이블을 Excel에서 Excel로 복사하는 방법
현재 Excel의 정보 일부를 Word 문서로 복사 할 수 있습니다. 문제는 내가 단어를 책갈피로 테이블 정보를 전달하는 솔루션을 찾을 수 없습니다.
Sub Word()
Dim wdApp As Word.Application
Dim WDDoc As Word.Document
Dim BMRange As Word.Range
Dim cliente As Range
Dim CPE As Range
Dim localidade As Range
Dim numproposta As Range
Dim DIRECT, saveAsName, data As String
Dim table1 As Table
Set wdApp = CreateObject("Word.Application") 'Create an instance of word
Set WDDoc = wdApp.Documents.Open("C:\Users\PT13217294\test.docm") 'Open word file
wdApp.Visible = True
'excel ranges
'Windows(shtname).Activate
Set cliente = Sheets("Dados").Range("C10")
Set CPE = Sheets("Dados").Range("C15")
Set localidade = Sheets("Dados").Range("C13")
Set table1 = Sheets("Cálculos").Range("B5:K17")
'word's bookmark
'cabeçalho
ActiveDocument.Bookmarks("cliente4").Range.Text = cliente
'rodapé
ActiveDocument.Bookmarks("num_proposta4").Range.Text = numproposta
'corpo texto
Set BMRange = WDDoc.Goto(What:=wdGoToBookmark, Name:="cliente1")
BMRange.Text = cliente
Set BMRange = WDDoc.Goto(What:=wdGoToBookmark, Name:="Table")
BMRange.Text = table1
'Guardar word na pasta das propostas
With wdApp.ActiveDocument
saveAsName = "C:\Users\PT13217294\test.docm"
ActiveDocument.SaveAs Filename:=saveAsName
wdApp.Quit
End With
Set BMRange = Nothing
Set WDDoc = Nothing
Set wdApp = Nothing
이 문제를 해결하려면 어떻게해야합니까? 사전에 감사합니다,
앙드레
우선, 프로그래밍을 위해'Option Explicit'을 사용해야합니다 ... 둘째, 코드 내에서 변수 이름을 확인하십시오 - 당신은'table1'을 가지고 있고'talbe'라는 책갈피를 넣으려고합니다 ... 아무것도 ... –
아, 코드를 여기에 복사 할 때 실수 였어. 그것은 같은 이름입니다. – andrescpacheco