我想在工作表中创建几个数据透视表,并从每个数据透视表创建一个图表。 第一个数据透视表和第一个图表是正常创建的。在我创建第二个数据透视表之后,我想在secound数据透视表中添加第二个包含Source的图表,但这比HRESULT E_FAIL还要重,第二个图表有第一个数据透视表的来源,我无法更改。
server/explorer/css/loopbackStyles.css
提前感谢您的帮助。
此致
丹尼尔
答案 0 :(得分:0)
我在VSTO C#项目中遇到了类似的问题。
在我的情况下,我必须做的是在创建图表之前选择枢轴范围。
我发现,如果在创建图表时选择了第一个轴的单元格,则图表将绑定到该轴,您无法更改源数据(事实上,您不能这样做即使在Excel中,图表的源范围也是灰色的。
我通过在创建图表之前选择之前的来解决。
Range rangePivot2 = pivotTable2.TableRange1;
rangePivot2.Select();
Chart chart = sheet.Controls.AddChart(cellsWhereTheChartWillBeDrawn, "secondChart");
chart.SetSourceData(rangePivot2); /* this won't give you E_FAIL... but it's not really needed */
我的代码示例是VSTO伪代码,但我相信类似的方法也适用于纯Excel COM自动化。