命名图表时出现内存不足错误

尝试命名图表时,出现“内存不足”错误。 我需要能够在以后的另一个子程序中参考这个图表。 任何帮助赞赏。

Sub CreateChart() ' Creates chart for the Quality sheet Dim sBusiness As String Dim charttype As String Dim shChart As Worksheet Dim num_iss As Integer Dim i As Integer Dim endrng As Integer Dim currentChart As Chart Set shChart = ThisWorkbook.Sheets("Chart Tool") sBusiness = ThisWorkbook.Worksheets("Chart Tool").Range("select_bu").value charttype = ThisWorkbook.Worksheets("Chart Tool").Range("select_chart").value num_iss = ThisWorkbook.Sheets("Chart Tool").Range("num_issues").value endrng = 31 + num_iss ' Chart Placement shChart.Shapes.AddChart(xlColumnClustered, _ Left:=8, Top:=110, _ Width:=428, Height:=240).Select If charttype = "Cost" Then ActiveChart.SetSourceData Source:=shChart.Range(shChart.Cells(2, 32), shChart.Cells(3, endrng)) ' souce range End If If charttype = "DPM" Then ActiveChart.SetSourceData Source:=shChart.Range(shChart.Cells(7, 32), shChart.Cells(8, endrng)) ' souce range End If ActiveChart.SetElement msoElementCategoryAxisShow ActiveChart.SetElement msoElementChartTitleAboveChart ' sets chart title above ActiveChart.SetElement msoElementLegendNone ' removes legend ActiveChart.SetElement msoElementPrimaryCategoryAxisTitleBelowAxis ' horizontal axis ActiveChart.SetElement msoElementPrimaryValueAxisTitleRotated ' Vertical axis ActiveChart.ChartTitle.Caption = "Top Issues for " & sBusiness & " by " & charttype ' adds title name ActiveChart.Axes(xlCategory, xlPrimary).AxisTitle.Caption = "Issue" ' adds x-axis title name ActiveChart.Axes(xlValue, xlPrimary).AxisTitle.Caption = charttype ' adds y-axis title name ActiveChart.Name = "ParetoChart" End Sub 

图表的.Name属性对于embedded式图表对象是只读的。 您应该能够为图表的父级.ChartObject分配一个名称。

由于ChartObject.Chart父项,请尝试:

 ActiveChart.Parent.Name = "ParetoChart"