将图表标题存储在数组中

时间:2016-11-18 17:28:49

标签: vba excel-vba excel

我正在尝试将图表中的图表标题存储到数组中。我有以下代码,但它似乎不起作用:

ReDim currentArray(1 To .ChartObjects.Count / 3) 
For i = 1 To .ChartObjects.Count Step 3
    .ChartObjects(i).chart.HasTitle = True
    title_name = .ChartObjects(i).chart.ChartTitle.Text
    If i = 1 Then
        Set currentArray(i) = title_name
    Else
        Set currentArray((i + 2) / 3) = title_name
    End If
Next

它给出了运行时错误'424'消息,说第6行需要对象,我尝试将图表的title_name存储到currentArray中。还有什么方法可以存储图表名称而不是图表本身?

1 个答案:

答案 0 :(得分:2)

参见例如What does the keyword Set actually do in VBA?

Object Required (424)错误意味着当赋值语句的左侧需要/需要对象时,赋值语句的右侧不返回对象。

在使用Objects时,基本上只使用Set关键字。每次都删除Set,它应该可以正常工作。