PowerPoint使用c#COM interop以编程方式更改图表数据源

时间:2013-10-02 13:43:37

标签: c# powerpoint office-interop powerpoint-2010

我正在制作一个应用程序,它可以下载数据并生成PowerPoint演示文稿。我设法创建了一个图表并访问这样的数据:

Microsoft.Office.Interop.PowerPoint.Shape Shape;
Microsoft.Office.Interop.Graph.Chart Ch;

Shape = Slide.Shapes.AddOLEObject(
                    Bounds.Left, Bounds.Top,
                    Bounds.Width, Bounds.Height,
                    ClassName);
Ch = (Graph.Chart) Shape.OLEFormat.Object;
Ch.Application.DataSheet.Cells[1, 2] = "some value";

但数据源仍然是默认的5x4单元格区域。 我该怎么改变它?我搜索了一会儿,看到像.Set_DataSource()这样的东西,但我没有这样的东西。

1 个答案:

答案 0 :(得分:0)

显然,这会生成旧版PowerPoint中使用的图表类型,并且数据区域会自动增长。我大多试图缩小数据表,我已经尝试将单元格值设置为null或“”并且它不起作用,这就是我无法解决的原因。 无论如何,解决方案是清除DataSheet:

Ch.Application.DataSheet.Rows.Clear();

(我通过浏览intellisense发现了这个。)