1

ワークブック シートで作成された ChartObject をコピーし、それを PowerPoint 2010 スライドに貼り付けて、データを含むスタンドアロンの Excel グラフ (埋め込み) にしようとしています。

手動で行う場合:

  1. WorkSheet にある ChartObject をコピーする
  2. パワーポイントのスライドに移動
  3. PasteSpecial をクリックし、「Use Destination Theme & Embed Workbook (H)」を選択します。
  4. 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
4

1 に答える 1