Excelから作成され、PowerPointスライドに貼り付けられた30のグラフがあります。毎月、手動でグラフをクリックして編集することにより、これらの30の埋め込みグラフを更新する必要があります。
特殊貼り付けを使用するオプションがあることを知っています。これにより、更新リンクをクリックすることで、チャートのデータを自動的に更新できます。ただし、一部のユーザーはグラフを編集する必要があります。特別な貼り付けオプションでは、ユーザーはグラフを編集できません。したがって、この特別な貼り付けオプションは使用できません。
解決策は、PowerPointでVBAを記述することだと思います。ここの専門家は、すべてのチャートをパワーポイントで更新できるように、このvbaコードを書くことを提案できますか?私は現在PowerPoint 2007を使用しています。ご協力に感謝いたします。
グラフを編集する必要がある場合は、基になるExcelファイルを編集するか、PowerPointで編集できるようにする必要があります
Excelを完全にサポートするPowerPoint2007を使用しているので(データシートがあるPowerPoint 2003とは異なり)、
パート1
これにより、柔軟なソリューションが提供されますが、各グラフの基になっているExcelは、PowerPointメニューの[リンクの更新]コマンドで自動的に更新できません。
パート2
以下のコードを使用して、各スライドの各図形にグラフがあるかどうかをそれぞれテストできます。その場合、このコードは、グラフの下のExcelファイルの最初のExcelリンクを更新します(この部分を微調整して、複数のリンクを処理できます)
Sub ChangeChartData()
Dim pptChart As Chart
Dim pptChartData As ChartData
Dim pptWorkbook As Object
Dim sld As Slide
Dim shp As Shape
For Each sld In ActivePresentation.Slides
For Each shp In sld.Shapes
If shp.HasChart Then
Set pptChart = shp.Chart
Set pptChartData = pptChart.ChartData
pptChartData.Activate
Set pptWorkbook = pptChartData.Workbook
On Error Resume Next
'update first link
pptWorkbook.UpdateLink pptWorkbook.LinkSources(1)
On Error GoTo 0
pptWorkbook.Close True
End If
Next
Next
Set pptWorkbook = Nothing
Set pptChartData = Nothing
Set pptChart = Nothing
End Sub
これは、VBAコードを必要とせずに、かなり簡単に実行できます。
[Officeボタン]をクリックし、[ファイルへのリンクの編集]を選択します([互換性チェックを実行]の下にあります。最後のオプションを表示するには、下にスクロールする必要があります):
すべての埋め込みグラフ(ここでは「リンク」と呼ばれます)を選択し、[今すぐ更新]をクリックします。
同じウィンドウを使用してリンクを解除したり、特定のリンクのソースファイルを変更したりできます。