机房管理系统经典代码块总结

1、模块
相信大家在写模块代码的时候都会用到一个split函数,那么问题来了,split函数到底是干什么用的?
split函数用一个用于分割字符串的函数,它能以一个字符串内容中的一个(或几个连续的)特定字符为切割位点的标志,将这个字符串分割成若干个小字符串。
举个例子:比如a="1,2,3,4,5"我想把1,2,3,4,5分别取出,应该怎么做?

Dim x() as Variant

a="1,2,3,4,5"
x=Split(a,",")

数据库传递参数代码:

    '传递参数SQL传递查询语句,Msgstring传递查询信息
    '自身以一个数据集的形式返回
Public Function ExecuteSQL(ByVal SQL As String, MsgString As String) As ADODB.Recordset
    Dim cnn As ADODB.Connection '定义连接
    Dim rst As ADODB.Recordset  '定义一个数据集
    Dim sTokens() As String     '定义字符串

    On Error GoTo ExecuteSQL_Error
        '异常处理
        sTokens = Split(SQL)        '用Split函数产生一个包含各个字串的数组
        Set cnn = New ADODB.Connection  '创建连接
        cnn.Open ConnectString          '打开连接

    If InStr("INSERT,DELETE,UPDATE", UCase$(sTokens(0))) Then   '非select语句
        cnn.Execute SQL     '数据量不大时,可以在连接上,直接执行SQL语句
        MsgString = sTokens(0) & "query successful"
        '虽然Msgstring不是返回值,但传递方式是Byref,实参地址和这个地址相同
    Else
        Set rst = New ADODB.Recordset
        rst.Open Trim$(SQL), cnn, adOpenKeyset, adLockOptimistic
        '得到临时表,游标指向第一条记录
        Set ExecuteSQL = rst
        MsgString = "查询到" & rst.RecordCount & _
            " 条记录 "
    End If

ExecuteSQL_Exit:
    Set rst = Nothing   '清空数据集对象
    Set cnn = Nothing   '中断连接
    Exit Function

ExecuteSQL_Error:
    MsgString = "查询错误:" & _
        Err.Description
    Resume ExecuteSQL_Exit
End Function

2、导出excel代码:

Private Sub cmdExportExcel_Click()
    Dim ExcelApp As Excel.Application   '定义excel表格应用程序
    Dim Excelbook As Excel.Workbook     '定义excel表格工作簿
    Dim ExcelSheet As Excel.Worksheet   '定义excel表格工作表
    Dim ExcelRange As Excel.Range
    
    Dim i As Integer    '定义excel表中的横坐标
    Dim j As Integer    '定义excel表中的列坐标
    
    Set ExcelApp = CreateObject("Excel.application")    '调用程序
    Set Excelbook = ExcelApp.Workbooks.Add              '创建一个工作簿
    Set ExcelSheet = Excelbook.Worksheets(1)            '新建一个工作表
    
    DoEvents '因一下代码运行时间较长,所以转让控制权,让操作系统处理其他时间,避免操作不响应误认为死机
    
    
    '没有数据时提示
    
    If MSFlexGrid1.Rows <= 1 Then
        MsgBox "没有可导出数据!", vbOKOnly + vbExclamation, "提示"
    End If
    
    With MSFlexGrid1
        For i = 0 To .Rows - 1  '循环添加行内容
            For j = 0 To .Cols - 1  '循环添加列内容
            DoEvents
            ExcelApp.ActiveSheet.Cells(i + 1, j + 1) = .TextMatrix(i, j)    '添加单元格内容
        Next j
            Next i
    End With
    
    ExcelApp.ActiveWorkbook.SaveAs App.Path & "\学生充值记录查询.xls"   '设置保存路径
    ExcelApp.ActiveWorkbook.Saved = True            '保存excel表格
    MsgBox "导出成功", vbOKOnly, "温馨提示"
    ExcelApp.Visible = True                         '显示excel表格
    '释放对象
    Set ExcelApp = Nothing
    Set Excelbook = Nothing
    Set ExcelSheet = Nothing
    
End Sub

3、查询数据库建立连接并赋值的代码:

    Dim txtSQL7 As String
    Dim MsgText7 As String
    Dim mrc7 As ADODB.Recordset
    txtSQL7 = "select * from Online_Info"
    Set mrc7 = ExecuteSQL(txtSQL7, MsgText7)
    lblPeople.Caption = mrc7.RecordCount
    mrc7.Close

当然,这是最简单的定义查询,建立数据集并赋值的代码,那些比较复杂的代码都是在这个基础上完成的。

你可能感兴趣的:(机房收费系统)