cs168
10-17-2005, 01:22 PM
Please show me how can I change the line chart color.I had try to use same number at all my setting but yet it still give me different color of each line.my code code is as below,
Sub AddChart(objCharts, objConstants, aryData, aryDescription, intChartType, XCaption, YCaption)
Dim objChart
Set objChart = objCharts.Charts.Add
With objChart
.Type = intChartType
.PlotArea.Interior.color = rgb(192,192,192)
.border.color = RGB(255,255,255)
.interior.color = RGB(240,240,240)
If Not Isnull(XCaption) Then
.Axes(0).HasTitle = True
.Axes(0).Title.Caption = XCaption
end if
.Axes(1).MajorGridlines.Line.Color = rgb(0,0,0)
If Not Isnull(YCaption) Then
.Axes(1).HasTitle = True
.Axes(1).Title.Caption = YCaption
.Axes(1).Title.Font.Name = "Arial"
.Axes(1).Title.Font.Size = 10
end if
.SetData objConstants.chDimCategories, objConstants.chDataLiteral, aryDescription
.SeriesCollection(0).SetData objConstants.chDimValues, objConstants.chDataLiteral, aryData
.SeriesCollection(0).Interior.Color = rgb(286,286,286)
.SeriesCollection(0).Border.Color = rgb(192,192,192)
.SeriesCollection(0).DataLabelsCollection.Add
.SeriesCollection.Add(1) 'the second data set
.SeriesCollection(1).SetData objConstants.chDimValues, objConstants.chDataLiteral, aryY2
.SeriesCollection(1).Interior.Color = rgb(192,192,192)
if instr(tType,"Line") > 0 then
.SeriesCollection(1).Line.Color = rgb(192,192,192)
else
.SeriesCollection(1).Border.Color = rgb(192,192,192)
end if
.SeriesCollection.Add(2) 'the 3rd data set
.SeriesCollection(2).SetData objConstants.chDimValues, objConstants.chDataLiteral, aryY3
.SeriesCollection(2).Interior.Color = rgb(192,192,192)
if instr(tType,"Line") > 0 then
.SeriesCollection(2).Line.Color = rgb(192,192,192)
else
.SeriesCollection(2).Border.Color = rgb(192,192,192)
end if
.SeriesCollection.Add(3) 'the 4th data set
.SeriesCollection(3).SetData objConstants.chDimValues, objConstants.chDataLiteral, aryY4
.SeriesCollection(3).Interior.Color = rgb(192,192,192)
if instr(tType,"Line") > 0 then
.SeriesCollection(3).Line.Color = rgb(192,192,192)
else
.SeriesCollection(3).Border.Color = rgb(192,192,192)
end if
.SeriesCollection.Add(4) 'the 5th data set
.SeriesCollection(4).SetData objConstants.chDimValues, objConstants.chDataLiteral, aryY5
.SeriesCollection(4).Interior.Color = rgb(192,192,192)
if instr(tType,"Line") > 0 then
.SeriesCollection(4).Line.Color = rgb(192,192,192)
else
.SeriesCollection(4).Border.Color = rgb(192,192,192)
end if
End With
Set objChart = Nothing
End Sub
Sub AddChart(objCharts, objConstants, aryData, aryDescription, intChartType, XCaption, YCaption)
Dim objChart
Set objChart = objCharts.Charts.Add
With objChart
.Type = intChartType
.PlotArea.Interior.color = rgb(192,192,192)
.border.color = RGB(255,255,255)
.interior.color = RGB(240,240,240)
If Not Isnull(XCaption) Then
.Axes(0).HasTitle = True
.Axes(0).Title.Caption = XCaption
end if
.Axes(1).MajorGridlines.Line.Color = rgb(0,0,0)
If Not Isnull(YCaption) Then
.Axes(1).HasTitle = True
.Axes(1).Title.Caption = YCaption
.Axes(1).Title.Font.Name = "Arial"
.Axes(1).Title.Font.Size = 10
end if
.SetData objConstants.chDimCategories, objConstants.chDataLiteral, aryDescription
.SeriesCollection(0).SetData objConstants.chDimValues, objConstants.chDataLiteral, aryData
.SeriesCollection(0).Interior.Color = rgb(286,286,286)
.SeriesCollection(0).Border.Color = rgb(192,192,192)
.SeriesCollection(0).DataLabelsCollection.Add
.SeriesCollection.Add(1) 'the second data set
.SeriesCollection(1).SetData objConstants.chDimValues, objConstants.chDataLiteral, aryY2
.SeriesCollection(1).Interior.Color = rgb(192,192,192)
if instr(tType,"Line") > 0 then
.SeriesCollection(1).Line.Color = rgb(192,192,192)
else
.SeriesCollection(1).Border.Color = rgb(192,192,192)
end if
.SeriesCollection.Add(2) 'the 3rd data set
.SeriesCollection(2).SetData objConstants.chDimValues, objConstants.chDataLiteral, aryY3
.SeriesCollection(2).Interior.Color = rgb(192,192,192)
if instr(tType,"Line") > 0 then
.SeriesCollection(2).Line.Color = rgb(192,192,192)
else
.SeriesCollection(2).Border.Color = rgb(192,192,192)
end if
.SeriesCollection.Add(3) 'the 4th data set
.SeriesCollection(3).SetData objConstants.chDimValues, objConstants.chDataLiteral, aryY4
.SeriesCollection(3).Interior.Color = rgb(192,192,192)
if instr(tType,"Line") > 0 then
.SeriesCollection(3).Line.Color = rgb(192,192,192)
else
.SeriesCollection(3).Border.Color = rgb(192,192,192)
end if
.SeriesCollection.Add(4) 'the 5th data set
.SeriesCollection(4).SetData objConstants.chDimValues, objConstants.chDataLiteral, aryY5
.SeriesCollection(4).Interior.Color = rgb(192,192,192)
if instr(tType,"Line") > 0 then
.SeriesCollection(4).Line.Color = rgb(192,192,192)
else
.SeriesCollection(4).Border.Color = rgb(192,192,192)
end if
End With
Set objChart = Nothing
End Sub