mschart不能用绑订,它会把你的第一各数据用来当作caption(还是其他什么的),要手动赋值!看下面的代码
Adostat.RecordSource = "select ...."
Adostat.Refresh
MSChart.ColumnCount = Adostat.Recordset.RecordCount
i = 1
Do While Not Adostat.Recordset.EOF
MSChart.Column = i
MSChart.Data = CCur(Adostat.Recordset(1))
MSChart.ColumnLabel = ....
i = i + 1
Adostat.Recordset.MoveNext
Loop
Adostat.RecordSource = "select ...."
Adostat.Refresh
MSChart.ColumnCount = Adostat.Recordset.RecordCount
i = 1
Do While Not Adostat.Recordset.EOF
MSChart.Column = i
MSChart.Data = CCur(Adostat.Recordset(1))
MSChart.ColumnLabel = ....
i = i + 1
Adostat.Recordset.MoveNext
Loop
Adostat.Refresh
MSChart.ColumnCount = Adostat.Recordset.RecordCount 'ColumnCount决定一共有多少列柱子
i = 1 '柱子1
Do While Not Adostat.Recordset.EOF
MSChart.Column = i '开始给第i列柱子赋值
MSChart.Data = CCur(Adostat.Recordset(1)) 'Data决定柱子的高度,数值
MSChart.ColumnLabel = "柱子" & i 'Columnlabel就是柱子下面显示的内容
i = i + 1 '开始写下一列柱子
Adostat.Recordset.MoveNext
Loop