向工作表添加图表控件
可以在设计时和运行时在文档级自定义项中向Microsoft 办公室 Excel 工作表添加Chart控件。 还可以在 VSTO 外接程序的运行时添加 Chart 控件。
适用于: 本主题中的信息适用于 Excel 的文档级项目和 VSTO 外接程序项目。 有关详细信息,请参阅办公室应用程序和项目类型提供的功能。
本主题介绍了以下任务:
在设计时添加图表控件
可按照与从应用程序添加图表相同的方式,将 Chart 控件添加到工作表中。
注意
控件Chart在工具箱或数据源窗口中不可用。
将图表主机控件添加到 Excel 的工作表中
在“插入”选项卡上的“图表”组中,单击“列”,单击图表类别,然后单击所需的图表类型。
在 “插入图表 ”对话框中,单击“ 确定”。
在 “设计 ”选项卡上的 “数据 ”组中,单击“ 选择数据”。
在 “选择数据源 ”对话框中,单击“ 图表数据范围 ”框并清除任何默认选择。
在 “图表 数据”工作表中,选择包含图表数据的单元格区域(单元格 A5 到 D8)。
在 “选择数据源 ”对话框中,单击“ 确定”。
在文档级项目中的运行时添加图表控件
可以在运行时动态添加 Chart 控件。 文档关闭时,动态创建的图表不会作为主机控件保留在文档中。 有关详细信息,请参阅在运行时向办公室文档添加控件。
以编程方式将图表控件添加到工作表中
在
Sheet1
的 Startup 事件处理程序中,插入下列代码以添加 Chart 控件。Microsoft.Office.Tools.Excel.Chart employeeData; employeeData = this.Controls.AddChart(25, 110, 200, 150, "employees"); employeeData.ChartType = Excel.XlChartType.xl3DPie; // Gets the cells that define the data to be charted. Excel.Range chartRange = this.get_Range("A5", "D8"); employeeData.SetSourceData(chartRange, missing);
在运行时在 VSTO 外接程序项目中添加图表控件
可以按编程方式将 Chart 控件添加到 VSTO 外接程序项目中任何打开的工作表中。 有关详细信息,请参阅 运行时在 VSTO 外接程序中扩展 Word 文档和 Excel 工作簿。
工作表关闭时,动态创建的图表控件不会作为主机控件保留在工作表中。 有关详细信息,请参阅在运行时向办公室文档添加控件。
以编程方式将图表控件添加到工作表中
下面的代码将生成基于打开工作表的工作表主机项,然后添加 Chart 控件。
private void AddChart() { Worksheet worksheet = Globals.Factory.GetVstoObject( Globals.ThisAddIn.Application.ActiveWorkbook.ActiveSheet); Excel.Range cells = worksheet.Range["A5", "D8"]; Chart chart = worksheet.Controls.AddChart(cells, "employees"); chart.ChartType = Microsoft.Office.Interop.Excel.XlChartType.xl3DPie; chart.SetSourceData(cells); }
编译代码
此示例具有下列要求:
- 制成图表并存储在工作表中 A5 到 D8 范围内的数据。