Exportera tabell till ett nytt
Word-dokument
I detta tips demonstreras en grundläggande teknik för att kopiera en tabell till ett nytt dokument, spara dokumentet i en dold Word-instans.Glöm inte av att ange en referens till Microsoft Word x.x Object Library.
Bilden visar tabellen som ska kopieras till ett nytt Word-dokument:
Cellområdet A1:F10 är namngivet till "Rapport".
Option Explicit
Sub Exportera_Word()
'© 2003 Alla rättigheter XL-Dennis
Dim wbBok As Workbook
Dim wsBlad As Worksheet
Dim rnRapport As Range
Dim wdApp As Word.Application
Dim wdDoc As Word.Document
Dim BMRange As Word.Range
Dim oShape As Word.InlineShape
Set wbBok = ThisWorkbook
Set wsBlad = wbBok.Worksheets("Blad1")
With wsBlad
Set rnRapport = .Range("Rapport")
End With
Application.ScreenUpdating = False
'Kopierar cellområdet.
rnRapport.Copy
'Skapa en ny instans av MS Word.
Set wdApp = CreateObject("Word.Application")
'Öppna ett befintlig dokument
Set wdDoc = wdApp.Documents.Open(ThisWorkbook.Path & "\Dennis.doc")
Set BMRange = wdDoc.Bookmarks("Rapport").Range
'Här utgår vi från att vi endast har ett objekt i dokumentet.
With wdDoc.InlineShapes(1)
.Select
.Delete
End With
'Kopierar in cellområdet.
With BMRange
.Select
.PasteSpecial Link:=False, DataType:=wdPasteMetafilePicture, _
Placement:=wdInLine, DisplayAsIcon:=False
End With
'Sparar och stänger det aktiva dokumentet.
With wdDoc
.Save
.Close
End With
'Stänger instansen av MS Word.
wdApp.Quit
Set wdDoc = Nothing
Set wdApp = Nothing
With Application
.CutCopyMode = False
.ScreenUpdating = True
End With
MsgBox "Rapporten kopierad över till Dennis.doc", vbInformation
End Sub
Följande bild visar resultatet i MS Word: