ワークブック シートで作成された ChartObject をコピーし、それを PowerPoint 2010 スライドに貼り付けて、データを含むスタンドアロンの Excel グラフ (埋め込み) にしようとしています。
手動で行う場合:
- WorkSheet にある ChartObject をコピーする
- パワーポイントのスライドに移動
- PasteSpecial をクリックし、「Use Destination Theme & Embed Workbook (H)」を選択します。
- Powerpoint で ChartObject を右クリックし、[データの編集] をクリックします。
次に、「Microsoft Excel のグラフ」というタイトルの新しいスタンドアロン ワークブックを取得します。これには、グラフとデータが表示されます。Excel VBA を使用して「Microsoft Excel のグラフ」というタイトルの新しいスタンドアロン ワークブックを取得するこのシナリオを再現できませんでした。誰か助けてくれませんか?
シートに単純な縦棒グラフがあると仮定すると、コードは次のようになります。
Option Explicit
Sub doit()
Dim Temp As Workbook
Dim Rng As Range
Dim ChtObj As ChartObject
With ThisWorkbook.Sheets(1)
Set ChtObj = .ChartObjects(1)
With ChtObj
.Copy
End With
Dim ppapp As Object
Dim pppres As Object
Dim ppslide As Object
On Error Resume Next
Set ppapp = GetObject(, "Powerpoint.Application")
If ppapp Is Nothing Then
Set ppapp = CreateObject("Powerpoint.Application")
End If
On Error GoTo 0
Set pppres = ppapp.presentations.Add
Set ppslide = pppres.Slides.Add(1, 12)
With ppapp
.Activate
.Visible = msoTrue
.ActiveWindow.viewtype = 1
End With
ChtObj.Copy
ppapp.ActiveWindow.View.Paste
End With
End Sub