.Plot.Axis(VtChAxisIdY).ValueScale.MajorDivision = 10 '设置Y轴网格数量 '给数组赋值(在这里要把该月的日期都赋进去) dim days as long days =DaysOfMonth(2009,12) '得到某月的天数 For iColumn = 1 To days vChartData(iColumn, 0) = CStr(iColumn) & "日" Next '给数组赋值(你在这里只要把前10天的值赋进去就行了) dim x as long x=UBound(badpercent) For iColumn = 1 To x + 1 vChartData(iColumn, 1) = CDec(FormatNumber(badpercent(iColumn - 1), 4)) * 100 Next '加载数据到图表 .ChartData = vChartData
End SubPublic Function DaysOfMonth(Year As Long, Month As Long) As Long Dim Day1 As String, Day2 As String Day1 = CStr(Year) + "-" + CStr(Month) + "-1" Day2 = CStr(Year) + "-" + CStr(Month + 1) + "-1" DaysOfMonth = DateDiff("d", Day1, Day2) End Function
Sub madeMonthChart(badpercent() As String, workFlow As String) Dim iColumn As Integer Dim vChartData(1 To 31, 1) As Variant
.Plot.Axis(VtChAxisIdY).ValueScale.MajorDivision = 10 '设置Y轴网格数量 '给数组赋值(在这里要把该月的日期都赋进去) dim days as long days =DaysOfMonth(2009,12) '得到某月的天数 For iColumn = 1 To days vChartData(iColumn, 0) = CStr(iColumn) & "日" Next '给数组赋值(你在这里只要把前10天的值赋进去就行了) dim x as long x=UBound(badpercent) For iColumn = 1 To x + 1 vChartData(iColumn, 1) = CDec(FormatNumber(badpercent(iColumn - 1), 4)) * 100 Next '加载数据到图表 .ChartData = vChartData
End SubPublic Function DaysOfMonth(Year As Long, Month As Long) As Long Dim Day1 As String, Day2 As String Day1 = CStr(Year) + "-" + CStr(Month) + "-1" Day2 = CStr(Year) + "-" + CStr(Month + 1) + "-1" DaysOfMonth = DateDiff("d", Day1, Day2) End Function
Dim iColumn As Integer
Dim vChartData(1 To 31, 1) As Variant
With MSChart1
.ChartType = VtChChartType2dLine
.AllowDithering = False
.AllowDynamicRotation = False
.AllowSelections = False
.AllowSeriesSelection = False
.AutoIncrement = False
.ShowLegend = False
.Plot.Axis(VtChAxisIdY).ValueScale.Auto = False '是否自动设置纵坐标
.Plot.Axis(VtChAxisIdY).ValueScale.Minimum = 0
.Plot.Axis(VtChAxisIdY).ValueScale.Maximum = 100
.Plot.Axis(VtChAxisIdY).ValueScale.MajorDivision = 10 '设置Y轴网格数量
'给数组赋值(在这里要把该月的日期都赋进去)
dim days as long
days =DaysOfMonth(2009,12) '得到某月的天数
For iColumn = 1 To days
vChartData(iColumn, 0) = CStr(iColumn) & "日"
Next
'给数组赋值(你在这里只要把前10天的值赋进去就行了)
dim x as long
x=UBound(badpercent)
For iColumn = 1 To x + 1
vChartData(iColumn, 1) = CDec(FormatNumber(badpercent(iColumn - 1), 4)) * 100
Next
'加载数据到图表
.ChartData = vChartData
'添加图表标题
.TitleText = myMonth & " " & workFlow & "オトヤツイサチシツハ(%)"
End With
End SubPublic Function DaysOfMonth(Year As Long, Month As Long) As Long
Dim Day1 As String, Day2 As String
Day1 = CStr(Year) + "-" + CStr(Month) + "-1"
Day2 = CStr(Year) + "-" + CStr(Month + 1) + "-1"
DaysOfMonth = DateDiff("d", Day1, Day2)
End Function
Dim iColumn As Integer
Dim vChartData(1 To 31, 1) As Variant
With MSChart1
.ChartType = VtChChartType2dLine
.AllowDithering = False
.AllowDynamicRotation = False
.AllowSelections = False
.AllowSeriesSelection = False
.AutoIncrement = False
.ShowLegend = False
.Plot.Axis(VtChAxisIdY).ValueScale.Auto = False '是否自动设置纵坐标
.Plot.Axis(VtChAxisIdY).ValueScale.Minimum = 0
.Plot.Axis(VtChAxisIdY).ValueScale.Maximum = 100
.Plot.Axis(VtChAxisIdY).ValueScale.MajorDivision = 10 '设置Y轴网格数量
'给数组赋值(在这里要把该月的日期都赋进去)
dim days as long
days =DaysOfMonth(2009,12) '得到某月的天数
For iColumn = 1 To days
vChartData(iColumn, 0) = CStr(iColumn) & "日"
Next
'给数组赋值(你在这里只要把前10天的值赋进去就行了)
dim x as long
x=UBound(badpercent)
For iColumn = 1 To x + 1
vChartData(iColumn, 1) = CDec(FormatNumber(badpercent(iColumn - 1), 4)) * 100
Next
'加载数据到图表
.ChartData = vChartData
'添加图表标题
.TitleText = myMonth & " " & workFlow & "オトヤツイサチシツハ(%)"
End With
End SubPublic Function DaysOfMonth(Year As Long, Month As Long) As Long
Dim Day1 As String, Day2 As String
Day1 = CStr(Year) + "-" + CStr(Month) + "-1"
Day2 = CStr(Year) + "-" + CStr(Month + 1) + "-1"
DaysOfMonth = DateDiff("d", Day1, Day2)
End Function
建一个variant数组,不画线的数据的不添加就可以了,不要赋值0,测试以下代码:Private Sub Form_Load()
Dim iCol As Integer
Dim Value(1 To 30, 1 To 2) As Variant
MSChart1.chartType = VtChChartType2dLine
MSChart1.ColumnLabelCount = 1
For iCol = 1 To 30 '标刻度
Value(iCol, 1) = "T" & iCol
Next For iCol = 1 To 15 '画线1到15刻度
Value(iCol, 2) = Rnd * 50
Next
MSChart1.ChartData = ValueEnd Sub