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: