I am getting an "out of memory" error while trying to name a chart. I need to be able to reference this chart later in another sub program. Any help appreciated.
在尝试命名图表时,我收到“内存不足”错误。我需要稍后在另一个子程序中引用此图表。任何帮助赞赏。
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
1 个解决方案
#1
11
The chart's .Name
property is Read-Only for embedded chart objects. You should be able to assign a name to the chart's parent .ChartObject
.
图表的.Name属性对于嵌入的图表对象是只读的。您应该能够为图表的父级.ChartObject指定名称。
Since the ChartObject
is parent of .Chart
, try:
由于ChartObject是.Chart的父级,请尝试:
ActiveChart.Parent.Name = "ParetoChart"
#1
11
The chart's .Name
property is Read-Only for embedded chart objects. You should be able to assign a name to the chart's parent .ChartObject
.
图表的.Name属性对于嵌入的图表对象是只读的。您应该能够为图表的父级.ChartObject指定名称。
Since the ChartObject
is parent of .Chart
, try:
由于ChartObject是.Chart的父级,请尝试:
ActiveChart.Parent.Name = "ParetoChart"