以编程方式设置 Excel 图表标题
Setting Excel chart title programmatically
如何使用 C# 和 Interop 设置图表标题?
实际尝试:
Excel.Range chartRange;
Excel.ChartObjects xlCharts = (Excel.ChartObjects)xlsSheet.ChartObjects(Type.Missing);
Excel.ChartObject myChart = (Excel.ChartObject)xlCharts.Add(10, 80, 300, 250);
Excel.Chart chartPage = myChart.Chart;
chartRange = xlsSheet.Range[xlsSheet.Cells[1, 1], xlsSheet.Cells[ar.GetLength(0), ar.GetLength(1)]];
chartPage.SetSourceData(chartRange, Excel.XlRowCol.xlRows);
chartPage.ChartType = Excel.XlChartType.xl3DColumn;
chartPage.Location(Excel.XlChartLocation.xlLocationAsNewSheet, oOpt);
chartPage.HasTitle = true;
chartPage.ChartTitle.Text = "HeaderText";
给予甜蜜
"System.Runtime.InteropServices.COMException"
调用 COM 组件返回错误 HRESULT E_FAIL
代替chartPage.HasTitle = true;
的另一种方法是在设置标题之前应用一些包含标题字段的图表布局。在 xl3DColumn Chart 的情况下:
chartPage.ApplyLayout (1)
chartPage.ChartTitle.Text = "HeaderText"
自己找到答案。
在图表页面填满信息之前设置标题即可。
如何使用 C# 和 Interop 设置图表标题?
实际尝试:
Excel.Range chartRange;
Excel.ChartObjects xlCharts = (Excel.ChartObjects)xlsSheet.ChartObjects(Type.Missing);
Excel.ChartObject myChart = (Excel.ChartObject)xlCharts.Add(10, 80, 300, 250);
Excel.Chart chartPage = myChart.Chart;
chartRange = xlsSheet.Range[xlsSheet.Cells[1, 1], xlsSheet.Cells[ar.GetLength(0), ar.GetLength(1)]];
chartPage.SetSourceData(chartRange, Excel.XlRowCol.xlRows);
chartPage.ChartType = Excel.XlChartType.xl3DColumn;
chartPage.Location(Excel.XlChartLocation.xlLocationAsNewSheet, oOpt);
chartPage.HasTitle = true;
chartPage.ChartTitle.Text = "HeaderText";
给予甜蜜
"System.Runtime.InteropServices.COMException"
调用 COM 组件返回错误 HRESULT E_FAIL
代替chartPage.HasTitle = true;
的另一种方法是在设置标题之前应用一些包含标题字段的图表布局。在 xl3DColumn Chart 的情况下:
chartPage.ApplyLayout (1)
chartPage.ChartTitle.Text = "HeaderText"
自己找到答案。
在图表页面填满信息之前设置标题即可。