0

Excel ドキュメントの範囲をコピーして PowerPoint スライドに貼り付けようとしています。

ソースのフォーマットを維持するのではなく、範囲を画像としてコピーしています。

oPPTApp As PowerPoint.Application
Dim oPPTFile As PowerPoint.Presentation
Dim oPPTShape As PowerPoint.Shape
Dim oPPTSlide As PowerPoint.Slide
On Error Resume Next
Set XLApp = GetObject(, "Excel.Application")
On Error GoTo 0

Windows("File1.xlsx").Activate
Sheets("Sheet1").Select
Range("B3:N9").Select
Selection.Copy
oPPTApp.ActiveWindow.View.GotoSlide (2)
oPPTApp.ActiveWindow.Panes(2).Activate
oPPTApp.ActiveWindow.View.PasteSpecial DataType:=ppPasteOLEObject
oPPTApp.ActiveWindow.Selection.ShapeRange.Left = 35
oPPTApp.ActiveWindow.Selection.ShapeRange.Top = 150
4

5 に答える 5

0

使ってみましたか

oPPTApp.ActiveWindow.View.PasteSpecial DataType:=ppPasteDefault
于 2013-07-01T08:13:56.617 に答える
0

Shapes.PasteSpecialメソッドを使用する代わりに、この解決策を試してください。

https://stackoverflow.com/a/19187572/1467082

PPTApp.CommandBars.ExecuteMso "PasteExcelChartSourceFormatting"

これは、Excel ドキュメントへのリンクを作成するのではなく、ドキュメントのローカル コピーを PowerPoint プレゼンテーションに埋め込みます。これがあなたの要件であることを理解していると思います。

于 2013-10-04T17:55:49.597 に答える