如何使用Microsoft.Office.Interop.PowerPoint(C#)库从Powerpoint文件修改图表

时间:2019-06-26 03:59:34

标签: c# office-interop

我有Powerpoint模板文件,其中包含许多与公司股票相关的图表。我的客户希望根据他们发送的模板文件导出Powerpoint文件。我需要从服务器获取真实数据并更新到这些图表。问题是这些图表链接到本地​​计算机上客户的Excel文件(客户不想共享这些文件)。

在Internet上搜索了很多信息后,我发现Powerpoint上的图表数据始终连接到Excel上的Workbook对象(我正在使用Microsoft.Office.Interop库)。有什么解决方案可以在不使用Excel.Workbook的情况下修改Powerpoint文件上的图表数据? (此时,从Excel Workbook创建新图表然后复制到Powerpoint是复杂的方法,因为ppt模板文件上有许多包含复杂数据的图表。如果没有任何解决方案,我将这样做)。 希望得到您的意见。

感谢阅读!

        if (objPres.Slides[2].Shapes[27].HasChart == Office.MsoTriState.msoTrue)
        {
            PowerPoint.Chart chart = objPres.Slides[2].Shapes[8].Chart;                                
            PowerPoint.ChartData chartData = chart.ChartData;                               
            chartData.Activate();
            Excel.Workbook workbook = chartData.Workbook;
            if(chart.HasDataTable == true)
            {

            }

        }

上面的代码将引发错误,我无法获取Workbook对象 然后我认为chart.DataTable可以显示聊天数据,但是现在我找不到下一步的处理方法。

0 个答案:

没有答案