2017-06-06 17 views
0

我試圖繪製在中小學軸兩個時間序列一個圖表上用下面的代碼:中小學軸VBA

Set ARng_1 = range("Annual_Series_1") 
    Set MRng_1 = range("Monthly_Series_1") 
    Sheet10.ChartObjects("Chart 17").Activate 
    With ActiveChart 
    .ChartType = xlLineMarkers 
    .SeriesCollection.Add Source:=ARng_1 
    .SeriesCollection.Add Source:=MRng_1 
    .Axes(xlCategory, xlPrimary).HasTitle = True 
    .Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "Dates" 
    .SeriesCollection(1).Axes(xlValue, xlPrimary).HasTitle = True 
    .SeriesCollection(2).Axes(xlValue, xlSecondary).HasTitle = True 
    .SeriesCollection(1).Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "Annual" 
    .SeriesCollection(2).Axes(xlValue, xlSecondary).AxisTitle.Characters.Text = "Monthly" 
    .Axes(xlCategory).HasMajorGridlines = True 
    .SeriesCollection(1).Format.Line.ForeColor.RGB = RGB(255, 0, 0) 
    .SeriesCollection(2).Format.Line.ForeColor.RGB = RGB(255, 0, 0) 
    .SeriesCollection(1).XValues = Date_Rng 
    End With 

我不斷收到錯誤(「對象不支持此屬性或對象「)在線:

.SeriesCollection(1).Axes(xlValue, xlPrimary).HasTitle = True 

我在做什麼錯在這裏?另外,我是否正確地處理軸?我正確地處理這個問題嗎?

謝謝!!!!!

+0

'的SeriesCollection(1)'表示'Series'對象。由於'Series'對象沒有'Axes'成員,因此您會收到錯誤。您可以使用「Chart.Axes」訪問軸。您可以使用'Series.AxisGroup'設置系列的主軸和輔助軸。 – xidgel

+0

非常感謝! – user8118201

回答

0

我認爲yourt代碼是要像波紋管..

Set ARng_1 = Range("Annual_Series_1") 
    Set MRng_1 = Range("Monthly_Series_1") 



     With ActiveChart 
     For i = .SeriesCollection.Count To 1 Step -1 
       .SeriesCollection(i).Delete 
     Next i 
     .ChartType = xlLineMarkers 
     .SeriesCollection.Add Source:=ARng_1 
     .SeriesCollection.Add Source:=MRng_1 
     .SeriesCollection(2).AxisGroup = 2 
     .Axes(xlCategory, xlPrimary).HasTitle = True 
     .Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "Dates" 
     .Axes(xlValue, xlPrimary).HasTitle = True 
     .Axes(xlValue, xlSecondary).HasTitle = True 
     .Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "Annual" 
     .Axes(xlValue, xlSecondary).AxisTitle.Characters.Text = "Monthly" 
     .Axes(xlCategory).HasMajorGridlines = True 
     .SeriesCollection(1).Format.Line.ForeColor.RGB = RGB(255, 0, 0) 
     .SeriesCollection(2).Format.Line.ForeColor.RGB = RGB(255, 0, 0) 
     .SeriesCollection(1).XValues = date_rng 
     End With