Exportera diagram till ett befintligt
Word-dokument
I detta tips demonstreras hur vi kan att exportera diagram till befintliga dokument, där vi använder oss av ett bokmärke i Word-dokumentet. Tipset visar också hur vi relativt enkelt kan omvandla ett diagram till en GIF-bild
Glöm inte av att ange en referens till Microsoft Word x.x Object Library.
Option Explicit
Sub Exportera_Diagram_Word()
'© 2003 Alla rättigheter XL-Dennis
Dim wbBok As Workbook
Dim wsBlad As Worksheet
Dim ctDiagram As ChartObject
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 ctDiagram = .ChartObjects("Rapport")
End With
Application.ScreenUpdating = False
'Här exporteras diagrammet och sparas som en separat GIF-fil.
ctDiagram.Chart.Export _
Filename:=ThisWorkbook.Path & "\Rapport.gif", FilterName:="GIF"
'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")
'Här utgår vi från att vi endast har ett objekt i dokumentet.
With wdDoc.InlineShapes(1)
.Select
.Delete
End With
'Tilldelar variabeln det aktuella bokmärket i MS Word.
Set BMRange = wdDoc.Bookmarks("Rapport").Range
With BMRange
.Select
'Infogar diagrammet i dokumentet
.InlineShapes.AddPicture Filename:= _
ThisWorkbook.Path & "\Rapport.gif", _
LinkToFile:=False, _
SaveWithDocument:=True
End With
'Sparar och stänger det aktiva dokumentet.
With wdDoc
.Save
.Close
End With
'Stänger instansen av MS Word.
wdApp.Quit
Set BMRange = Nothing
Set wdDoc = Nothing
Set wdApp = Nothing
With Application
.CutCopyMode = False
.ScreenUpdating = True
End With
'Ta bort den skapade GIF-filen.
Kill ThisWorkbook.Path & "\Rapport.gif"
MsgBox "Rapportdiagram kopierad över till Dennis.doc", vbInformation
End Sub
Så här ser diagrammet ut när det har sparats till GIF-formatet: