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

7
我在尝试给一个图表命名时遇到了"内存不足"错误。我需要能够在另一个子程序中引用这个图表。感谢您的任何帮助。
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

你在哪一行代码出现了错误? - Gareth
尝试使用 ActiveChart.Parent.Name = "ParetoChart" - David Zemens
1个回答

17

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

由于ChartObject.Chart的父级,因此请尝试:

ActiveChart.Parent.Name = "ParetoChart"

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接