System.Runtime.InteropServices.COMException HRESULT:0x800A03EC 对象图表粘贴
System.Runtime.InteropServices.COMException HRESULT : 0x800A03EC ObjectCharts Paste
我有这个代码
targetSheet = (Excel.Worksheet)excelWorkBook.ActiveSheet;
Excel.ChartObject myChart1 = targetSheet.ChartObjects("mco");
myChart1.Copy();
Microsoft.Office.Interop.PowerPoint.ShapeRange shape2 = sld.Shapes.Paste();
Excel.Worksheet targetSheet2 = (Excel.Worksheet)excelWorkBook.ActiveSheet;
Excel.ChartObject myChart2 = targetSheet2.ChartObjects("txAnnul");
myChart2.Copy();
Microsoft.Office.Interop.PowerPoint.ShapeRange shape3 = sld.Shapes.Paste();
Excel.Worksheet targetSheet3 = (Excel.Worksheet)excelWorkBook.ActiveSheet;
Excel.ChartObject myChart3 = targetSheet3.ChartObjects("perceived");
myChart3.Copy();
Microsoft.Office.Interop.PowerPoint.ShapeRange shape4 = sld.Shapes.Paste();
当我只使用前两个图表时它工作正常并且我的 pptx 中有我的两个图表,但是当我添加第三个图表时 "myChart3" 我收到了我在本主题标题中提到的错误.
请问我该如何解决这个问题?谢谢
我解决了我的问题,方法是:
myChart1.Chart.ChartArea.Copy();
而不是
myChart1.Copy();
。我不知道到底发生了什么,但我会调查以找出 chart.copy() 和 chart.chartarea.copy() 之间的区别。
希望这个解决方案可以帮助面临同样问题的人们。
我有这个代码
targetSheet = (Excel.Worksheet)excelWorkBook.ActiveSheet;
Excel.ChartObject myChart1 = targetSheet.ChartObjects("mco");
myChart1.Copy();
Microsoft.Office.Interop.PowerPoint.ShapeRange shape2 = sld.Shapes.Paste();
Excel.Worksheet targetSheet2 = (Excel.Worksheet)excelWorkBook.ActiveSheet;
Excel.ChartObject myChart2 = targetSheet2.ChartObjects("txAnnul");
myChart2.Copy();
Microsoft.Office.Interop.PowerPoint.ShapeRange shape3 = sld.Shapes.Paste();
Excel.Worksheet targetSheet3 = (Excel.Worksheet)excelWorkBook.ActiveSheet;
Excel.ChartObject myChart3 = targetSheet3.ChartObjects("perceived");
myChart3.Copy();
Microsoft.Office.Interop.PowerPoint.ShapeRange shape4 = sld.Shapes.Paste();
当我只使用前两个图表时它工作正常并且我的 pptx 中有我的两个图表,但是当我添加第三个图表时 "myChart3" 我收到了我在本主题标题中提到的错误. 请问我该如何解决这个问题?谢谢
我解决了我的问题,方法是:
myChart1.Chart.ChartArea.Copy();
而不是
myChart1.Copy();
。我不知道到底发生了什么,但我会调查以找出 chart.copy() 和 chart.chartarea.copy() 之间的区别。
希望这个解决方案可以帮助面临同样问题的人们。