Vba 访问PowerPoint2010形状和VSTO中的图表数据

Vba 访问PowerPoint2010形状和VSTO中的图表数据,vba,vsto,powerpoint,Vba,Vsto,Powerpoint,我必须格式化位于数据标签形状更改字体内的饼图,更改饼图内的颜色等。我有一个代码片段: foreach (Shape s in Selection.SlideRange.Shapes) { if (s.HasChart == Microsoft.Office.Core.MsoTriState.msoTrue) { Excel.Workbook workbook = s.Chart.Cha

我必须格式化位于数据标签形状更改字体内的饼图,更改饼图内的颜色等。我有一个代码片段:

        foreach (Shape s in Selection.SlideRange.Shapes)
        {
            if (s.HasChart == Microsoft.Office.Core.MsoTriState.msoTrue)
            {
                Excel.Workbook workbook = s.Chart.ChartData. as Excel.Workbook;
            }
        }
s、 图表不为空。但是,当我调用ChartData属性时,会出现一个异常:

's.Chart.ChartData.Workbook' threw an exception of type 'System.Runtime.InteropServices.COMException'

如何实际获取图表基础数据和属性?

据我记忆所及,shape.Chart.ChartData是一个ChartData对象,不是Excel.工作簿,但它有一个名为工作簿的属性。您可以在这里找到一个简短的示例: