Dim strsql As String Dim ADORS As ADODB.Recordset'功能:查询并在MSFlexGrid上显示 Private Sub cmdQuery_Click() Dim dblTotalMoney As Double Dim dblTotalDown As Double Dim dblTotalNum As Double Dim i As Integer Dim strHour As String
'Call FillGridHeader
Dim mycnn As ADODB.Connection Set mycnn = New ADODB.Connection mycnn.ConnectionTimeout = GL_ConnectTimeout mycnn.CommandTimeout = GL_ConnectTimeout mycnn.Open GL_ConnStr
If ADORS Is Nothing Then Set ADORS = New ADODB.Recordset End If
If ADORS.state <> adStateClosed Then ADORS.Close End If ADORS.CursorLocation = adUseClient ADORS.CursorType = adOpenDynamic ADORS.LockType = adLockOptimistic
strsql = "select * from vi_StatCustDown" ADORS.Open strsql, mycnn, , adCmdTable msGridStatis.Rows = ADORS.RecordCount + 2 i = 1 dblTotalMoney = 0 dblTotalDown = 0 dblTotalNum = 0 While Not ADORS.eof If Not IsNull(ADORS("StatisHour")) Then strHour = ADORS("StatisHour") & ":00 - " & ADORS("StatisHour") & ":59" Else strHour = "" End If
PictureL(0).Visible = True Label(0).Visible = True Label(0).Caption = "下载金额" PictureL(1).Visible = True Label(1).Visible = True Label(1).Caption = "面值金额" If Not (ADORS.BOF And ADORS.eof) Then i = 0 MSChart1.Column = 1 ADORS.MoveFirst While Not ADORS.eof MSChart1.Column = 1 MSChart1.Row = i + 1 MSChart1.RowLabel = IIf(IsNull(ADORS("StatisHour")), "", ADORS("StatisHour")) MSChart1.Data = IIf(IsNull(ADORS("StatisLoad")), 0, ADORS("StatisLoad")) MSChart1.ColumnLabel = "下载金额" MSChart1.Column = 2 MSChart1.Row = i + 1 MSChart1.Data = IIf(IsNull(ADORS("StatisMoney")), 0, ADORS("StatisMoney")) MSChart1.ColumnLabel = "面值金额"
ADORS.MoveNext i = i + 1 Wend End If End Sub'功能:三维柱状图 Private Sub cmd3B_Click() If ADORS Is Nothing Then MsgBox "请先查询!", vbInformation, "提示信息" Exit Sub End If
PictureL(0).Visible = True Label(0).Visible = True Label(0).Caption = "下载金额" PictureL(1).Visible = True Label(1).Visible = True Label(1).Caption = "面值金额" If Not (ADORS.BOF And ADORS.eof) Then i = 0 MSChart1.Column = 1 ADORS.MoveFirst While Not ADORS.eof MSChart1.Column = 1 MSChart1.Row = i + 1 MSChart1.RowLabel = IIf(IsNull(ADORS("StatisHour")), "", ADORS("StatisHour")) MSChart1.Data = IIf(IsNull(ADORS("StatisLoad")), 0, ADORS("StatisLoad")) MSChart1.ColumnLabel = "下载金额" MSChart1.Column = 2 MSChart1.Row = i + 1 MSChart1.Data = IIf(IsNull(ADORS("StatisMoney")), 0, ADORS("StatisMoney")) MSChart1.ColumnLabel = "面值金额"
ADORS.MoveNext i = i + 1 Wend End If End Sub'功能:线条图 Private Sub cmdLine_Click() If ADORS Is Nothing Then MsgBox "请先查询!", vbInformation, "提示信息" Exit Sub End If
Dim ADORS As ADODB.Recordset'功能:查询并在MSFlexGrid上显示
Private Sub cmdQuery_Click()
Dim dblTotalMoney As Double
Dim dblTotalDown As Double
Dim dblTotalNum As Double
Dim i As Integer
Dim strHour As String
'Call FillGridHeader
Dim mycnn As ADODB.Connection
Set mycnn = New ADODB.Connection
mycnn.ConnectionTimeout = GL_ConnectTimeout
mycnn.CommandTimeout = GL_ConnectTimeout
mycnn.Open GL_ConnStr
If ADORS Is Nothing Then
Set ADORS = New ADODB.Recordset
End If
If ADORS.state <> adStateClosed Then
ADORS.Close
End If
ADORS.CursorLocation = adUseClient
ADORS.CursorType = adOpenDynamic
ADORS.LockType = adLockOptimistic
strsql = "select * from vi_StatCustDown"
ADORS.Open strsql, mycnn, , adCmdTable
msGridStatis.Rows = ADORS.RecordCount + 2
i = 1
dblTotalMoney = 0
dblTotalDown = 0
dblTotalNum = 0
While Not ADORS.eof
If Not IsNull(ADORS("StatisHour")) Then
strHour = ADORS("StatisHour") & ":00 - " & ADORS("StatisHour") & ":59"
Else
strHour = ""
End If
msGridStatis.TextMatrix(i, 0) = strHour
msGridStatis.TextMatrix(i, 1) = IIf(IsNull(ADORS("AreaName")), "", ADORS("AreaName"))
msGridStatis.TextMatrix(i, 2) = Format(IIf(IsNull(ADORS("StatisMoney")), 0, ADORS("StatisMoney")), "0.00")
dblTotalMoney = dblTotalMoney + IIf(IsNull(ADORS("StatisMoney")), 0, ADORS("StatisMoney"))
msGridStatis.TextMatrix(i, 3) = Format(IIf(IsNull(ADORS("StatisLoad")), 0, ADORS("StatisLoad")), "0.00")
dblTotalDown = dblTotalDown + IIf(IsNull(ADORS("StatisLoad")), 0, ADORS("StatisLoad"))
msGridStatis.TextMatrix(i, 4) = IIf(IsNull(ADORS("StatisDownNum")), 0, ADORS("StatisDownNum"))
dblTotalNum = dblTotalNum + IIf(IsNull(ADORS("StatisDownNum")), 0, ADORS("StatisDownNum"))
i = i + 1
ADORS.MoveNext
Wend
msGridStatis.TextMatrix(i, 0) = "合计"
msGridStatis.TextMatrix(i, 2) = Format(dblTotalMoney, "0.00")
msGridStatis.TextMatrix(i, 3) = Format(dblTotalDown, "0.00")
msGridStatis.TextMatrix(i, 4) = dblTotalNum
End Sub'功能:二维柱状图
Private Sub cmd2B_Click()
If ADORS Is Nothing Then
MsgBox "请先查询!", vbInformation, "提示信息"
Exit Sub
End If
Frame2.Visible = False
Frame4.Visible = True
Dim i As Integer, j As Integer
MSChart1.Visible = True
'MSChart1.Width = 7455
MSChart1.ChartType = VtChChartType2dBar
MSChart1.RowCount = ADORS.RecordCount
MSChart1.ColumnCount = 2
PictureL(0).Visible = True
Label(0).Visible = True
Label(0).Caption = "下载金额"
PictureL(1).Visible = True
Label(1).Visible = True
Label(1).Caption = "面值金额" If Not (ADORS.BOF And ADORS.eof) Then
i = 0
MSChart1.Column = 1
ADORS.MoveFirst
While Not ADORS.eof
MSChart1.Column = 1
MSChart1.Row = i + 1
MSChart1.RowLabel = IIf(IsNull(ADORS("StatisHour")), "", ADORS("StatisHour"))
MSChart1.Data = IIf(IsNull(ADORS("StatisLoad")), 0, ADORS("StatisLoad"))
MSChart1.ColumnLabel = "下载金额"
MSChart1.Column = 2
MSChart1.Row = i + 1
MSChart1.Data = IIf(IsNull(ADORS("StatisMoney")), 0, ADORS("StatisMoney"))
MSChart1.ColumnLabel = "面值金额"
ADORS.MoveNext
i = i + 1
Wend
End If
End Sub'功能:三维柱状图
Private Sub cmd3B_Click()
If ADORS Is Nothing Then
MsgBox "请先查询!", vbInformation, "提示信息"
Exit Sub
End If
Frame2.Visible = False
Frame4.Visible = True
Dim i As Integer, j As Integer
MSChart1.Visible = True
'MSChart1.Width = 7455
MSChart1.ChartType = VtChChartType3dBar
MSChart1.RowCount = ADORS.RecordCount
MSChart1.ColumnCount = 2
PictureL(0).Visible = True
Label(0).Visible = True
Label(0).Caption = "下载金额"
PictureL(1).Visible = True
Label(1).Visible = True
Label(1).Caption = "面值金额" If Not (ADORS.BOF And ADORS.eof) Then
i = 0
MSChart1.Column = 1
ADORS.MoveFirst
While Not ADORS.eof
MSChart1.Column = 1
MSChart1.Row = i + 1
MSChart1.RowLabel = IIf(IsNull(ADORS("StatisHour")), "", ADORS("StatisHour"))
MSChart1.Data = IIf(IsNull(ADORS("StatisLoad")), 0, ADORS("StatisLoad"))
MSChart1.ColumnLabel = "下载金额"
MSChart1.Column = 2
MSChart1.Row = i + 1
MSChart1.Data = IIf(IsNull(ADORS("StatisMoney")), 0, ADORS("StatisMoney"))
MSChart1.ColumnLabel = "面值金额"
ADORS.MoveNext
i = i + 1
Wend
End If
End Sub'功能:线条图
Private Sub cmdLine_Click()
If ADORS Is Nothing Then
MsgBox "请先查询!", vbInformation, "提示信息"
Exit Sub
End If
Frame2.Visible = False
Frame4.Visible = True
Dim i As Integer, j As Integer
MSChart1.Visible = True
'MSChart1.Width = 7455
MSChart1.ChartType = VtChChartType2dLine
MSChart1.RowCount = ADORS.RecordCount
MSChart1.ColumnCount = 2
PictureL(0).Visible = True
Label(0).Visible = True
Label(0).Caption = "下载金额"
PictureL(1).Visible = True
Label(1).Visible = True
Label(1).Caption = "面值金额" If Not (ADORS.BOF And ADORS.eof) Then
i = 0
MSChart1.Column = 1
ADORS.MoveFirst
While Not ADORS.eof
MSChart1.Column = 1
MSChart1.Row = i + 1
MSChart1.RowLabel = IIf(IsNull(ADORS("StatisHour")), "", ADORS("StatisHour"))
MSChart1.Data = IIf(IsNull(ADORS("StatisLoad")), 0, ADORS("StatisLoad"))
MSChart1.ColumnLabel = "下载金额"
MSChart1.Column = 2
MSChart1.Row = i + 1
MSChart1.Data = IIf(IsNull(ADORS("StatisMoney")), 0, ADORS("StatisMoney"))
MSChart1.ColumnLabel = "面值金额"
ADORS.MoveNext
i = i + 1
Wend
End If
End Sub
MSDN上的切来切去麻烦那