为什么.XValues不接受那个阵列?

时间:2016-01-29 12:05:37

标签: arrays excel vba charts axis

我在理解为什么数组" ordem"时遇到了一些问题。不工作和阵列" quant"当我把它们放在" .XValues"和"。价值"在我的系列剧中。

以下是我创建的用于获取此数组" ordem"

的函数
'Função que cria o vetor ordenado com as idades contidas em outro, eixo x
Function OrdemIdade(dados)
    Dim Max, Min As Integer
    ReDim ordem(1 To 10000) As Integer
    k = 0
    n = UBound(dados)
    Max = 0
    Min = 150
    For i = 1 To n
        If (dados(i) < Min) Then
            Min = dados(i)
        End If
        If (dados(i) > Max) Then
            Max = dados(i)
        End If
    Next i
    For j = Min To Max
        k = k + 1
        ordem(k) = j
    Next j
    ReDim Preserve ordem(1 To k) As Integer
    OrdemIdade = ordem
End Function

这是一个不起作用的子程序因为&#34; ordem&#34;阵列

Sub GerarGraficosBD()
    'Premissas
    plano = "BD"
    AnoAtual = 2012
    'Tentativa de gerar grafico de colunas das idades
    dados = DadosIdades(plano, AnoAtual)
    ordem = OrdemIdade(dados)
    quant = QuantidadeIdade(dados, ordem)
    xaxis = ordem
    yaxis = quant
    Dim c As Chart
    Set c = ActiveWorkbook.Charts.Add
    Set c = c.Location(Where:=xlLocationAsObject, Name:="PlanoBD")
    With c
        .ChartType = xlColumnStacked 'A column plot!
         'set other chart properties
    End With
    Dim s As Series
    Set s = c.SeriesCollection.NewSeries
    With s
        .Values = yaxis
        .XValues = xaxis 'PROBLEM HERE, ON THAT LINE/ PROBLEMA NESTA LINHA! PORQUE!?!?
        ' set other series properties
    End With
    With c
        .Axes(xlCategory, xlPrimary).HasTitle = True
        .Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "Idade"
        .Axes(xlValue, xlPrimary).HasTitle = True
        .Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "Quantidade"
        .HasLegend = False
    End With
End Sub

抱歉,我的机器是一个过时的代码

0 个答案:

没有答案