Ich möchte ein Makro erstellen, das Diagramme aus Excel kopiert und fügt sie in Word als Bilder (vorzugsweise Enhanced Metafiles).VBA Kopieren Excel-Diagramm in Word als Bild ändert die Diagrammgröße
Ich habe ein Word-Vorlage-Dokument mit einer Tabelle eingerichtet, die Lesezeichen in bestimmten Zellen enthält, in die die Bilder eingefügt werden sollen.
Mit meinem aktuellen Code ist das eingefügte Bild jedoch viel zu groß und verschraubt die ganze Tabelle. Ich habe versucht, verschiedene Bildoptionen (erweiterte Metadatei, Png, etc.), aber sie haben alle das gleiche Ergebnis.
Wenn ich versuche, das Diagramm von Hand mit PasteSpecial
in der Tabelle zu kopieren, behält es die ursprüngliche Größe, die genau so ist, wie ich es will.
Was muss ich in meinem Code ändern, um das zu bekommen?
Sub CopyCharts2Word()
Dim wd As Object
Dim ObjDoc As Object
Dim FilePath As String
Dim FileName As String
FilePath = "C:\Users\Name\Desktop"
FileName = "Template.docx"
'check if template document is open in Word, otherwise open it
On Error Resume Next
Set wd = GetObject (, "Word.Application")
If wd Is Nothing Then
Set wd = CreateObject("Word.Application")
Set ObjDoc = wd.Documents.Open(FilePath & "\" & FileName)
Else
On Error GoTo notOpen
Set ObjDoc = wd.Documents(FileName)
GoTo OpenAlready
notOpen:
Set ObjDoc = wd.Documents.Open(FilePath & "\" & FileName)
End If
OpenAlready:
On Error GoTo 0
'find Bookmark in template doc
wd.Visible = True
ObjDoc.Bookmarks("Boomark1").Select
'copy chart from Excel
Sheets("Sheet1").ChartObjects("ChartA").chart.ChartArea.Copy
'insert chart to Bookmark in template doc
wd.Selection.PasteSpecial Link:=False, _
DataType:=wdPasteMetafilePicture, _
Placement:=wdInLine, _
DisplayAsIcon:=False
End Sub
Haben Sie versucht, das Makro während des Kopierens/Einfügens von Hand aufzuzeichnen und die Codes zu vergleichen? –
Ja, Problem ist, es zeichnet nur auf, was ich in Excel mache (d. H., Wähle und kopiere das Diagramm, nicht wie ich es in das Word-Dokument einfüge). Wenn ich versuche, ein Makro des Einfügens des Diagramms in Word aufzuzeichnen, kann ich nicht die Tabelle auswählen, in der ich das Diagramm einfügen möchte. – Rafael
Wenn Sie manuell einfügen, was ist das Placement? Ich glaube, es ist eng statt inline. Auch Wort hat Inline-Formen, schau hinein. Das wird helfen. – cyboashu