欢迎光临散文网 会员登陆 & 注册

【学校收费管理系统】(VBA版)-Access数据库系统设计制作实例 代码分享

2023-03-27 15:48 作者:凌霄百科  | 我要投稿


系统登录

控件:文本框,按钮

Private Sub Command登录_Click()

    If IsNull(Me.用户名) = True Or Me.用户名.Value = "" Then

        MsgBox "请输入用户名!"

        Exit Sub

    End If

    If IsNull(Me.密码) = True Or Me.密码.Value = "" Then

        MsgBox "请输入密码!"

        Exit Sub

    End If

    If Me.用户名 = "admin" And Me.密码 = "123" Then

    MsgBox "登录成功"

    DoCmd.Close acForm, Me.Name

    DoCmd.OpenForm "系统导航", acNormal

    Else

    MsgBox "用户名或密码错误"

    Exit Sub

    End If

End Sub

 

Private Sub Command退出_Click()

Application.Quit acQuitSaveAll

End Sub


 

 

系统导航

控件:按钮


Private Sub Command基础数据管理_Click()

DoCmd.OpenForm "基础数据管理", acNormal

End Sub

 

Private Sub Command教材费管理_Click()

DoCmd.OpenForm "教材费查询添加", acNormal

End Sub

 

Private Sub Command考试费管理_Click()

DoCmd.OpenForm "考试费查询添加", acNormal

End Sub

 

Private Sub Command其他费管理_Click()

DoCmd.OpenForm "其他费查询添加", acNormal

End Sub

 

Private Sub Command退出系统_Click()

If MsgBox("是否退出该系统?", vbYesNo) = vbYes Then

Application.Quit acQuitSaveAll

End If

End Sub

 

Private Sub Command学费管理_Click()

DoCmd.OpenForm "学费查询添加", acNormal

End Sub

 

Private Sub Command学生管理_Click()

DoCmd.OpenForm "学生查询添加", acNormal

End Sub

 

Private Sub Command住宿费管理_Click()

DoCmd.OpenForm "住宿费查询添加", acNormal

End Sub

 

基础数据管理

控件:子窗体


 

教材费查询数据表(数据表形式窗体)


Private Sub Form_BeforeUpdate(Cancel As Integer)

On Error GoTo 数据更新前提醒_Err

 

    If (MsgBox("是否保存对记录的修改", 1, "修改记录提醒") = 1) Then

        Beep

    Else

        DoCmd.RunCommand acCmdUndo

    End If

 

 

数据更新前提醒_Exit:

    Exit Sub

 

数据更新前提醒_Err:

    MsgBox Error$

    Resume 数据更新前提醒_Exit

End Sub

 

Private Sub 教材费ID_DblClick(Cancel As Integer)

DoCmd.OpenForm "教材费更新删除", acNormal, , "教材费ID=" & Me.教材费ID

End Sub

 

 

教材费查询添加


Option Compare Database

 

Private Sub Command查询_Click()

If Me.查询类型 <> "" And Me.查询内容 <> "" Then

Me.数据表子窗体.Form.Filter = Me.查询类型 & " like '*" & Me.查询内容 & "*'"

Me.数据表子窗体.Form.FilterOn = True

Else

Me.数据表子窗体.Form.FilterOn = False

End If

End Sub

 

Private Sub Command清空_Click()

教材名称.Value = ""

学号.Value = ""

教材费.Value = ""

已收金额.Value = ""

交费日期.Value = ""

备注.Value = ""

End Sub

 

Private Sub Command全部_Click()

Me.数据表子窗体.Form.FilterOn = False

End Sub

 

Private Sub Command生成报表_Click()

If Me.查询类型 <> "" And Me.查询内容 <> "" Then

DoCmd.OpenReport "教材费报表", acViewReport, , Me.查询类型 & " like '*" & Me.查询内容 & "*'"

Else

DoCmd.OpenReport "教材费报表", acViewReport

End If

End Sub

 

Private Sub Command添加_Click()

If 教材名称.Value <> "" And 学号.Value <> "" And 教材费.Value <> "" And 已收金额.Value <> "" Then

    DoCmd.SetWarnings (False)

    DoCmd.OpenQuery "教材费添加查询", acViewNormal

    MsgBox "添加完成"

    Me.数据表子窗体.Requery

Else

    MsgBox "教材名称,学号,教材费,已收金额不能为空"

    Exit Sub

End If

End Sub

 

Private Sub 交费日期_DblClick(Cancel As Integer)

Me.交费日期.Value = Date

End Sub

 

Private Sub 教材名称_AfterUpdate()

If Me.教材名称.Value <> "" Then

Me.教材费.Value = Nz(DLookup("教材费", "教材表", "教材名称='" & Me.教材名称.Value & "'"), "")

Else

Me.教材费.Value = ""

End If

End Sub

 

Private Sub 教材名称_Change()

If Me.教材名称.Value <> "" Then

Me.教材费.Value = Nz(DLookup("教材费", "教材表", "教材名称='" & Me.教材名称.Value & "'"), "")

Else

Me.教材费.Value = ""

End If

End Sub

 

教材费更新删除


Private Sub Form_BeforeUpdate(Cancel As Integer)

If 教材名称.Value <> "" And 学号.Value <> "" And 教材费.Value <> "" And 已收金额.Value <> "" Then

On Error GoTo 数据更新前提醒_Err

 

    If (MsgBox("是否保存对记录的修改", 1, "修改记录提醒") = 1) Then

        Beep

    Else

        DoCmd.RunCommand acCmdUndo

    End If

 

Else

    MsgBox "教材名称,学号,教材费,已收金额不能为空"

    On Error Resume Next

    DoCmd.RunCommand acCmdUndo

    Exit Sub

End If

数据更新前提醒_Exit:

    Exit Sub

 

数据更新前提醒_Err:

    MsgBox Error$

    Resume 数据更新前提醒_Exit

End Sub

 

Private Sub Form_Close()

On Error Resume Next

Forms("教材费查询添加").Form.数据表子窗体.Requery

End Sub

 

Private Sub 交费日期_DblClick(Cancel As Integer)

Me.交费日期.Value = Date

End Sub

 

Private Sub 教材名称_AfterUpdate()

If Me.教材名称.Value <> "" Then

Me.教材费.Value = Nz(DLookup("教材费", "教材表", "教材名称='" & Me.教材名称.Value & "'"), "")

Else

Me.教材费.Value = ""

End If

End Sub

 

Private Sub 教材名称_Change()

If Me.教材名称.Value <> "" Then

Me.教材费.Value = Nz(DLookup("教材费", "教材表", "教材名称='" & Me.教材名称.Value & "'"), "")

Else

Me.教材费.Value = ""

End If

End Sub

 

Private Sub Command更新_Click()

If 教材名称.Value <> "" And 学号.Value <> "" And 教材费.Value <> "" And 已收金额.Value <> "" Then

    On Error Resume Next

    DoCmd.RunCommand acCmdSaveRecord

Else

    MsgBox "教材名称,学号,教材费,已收金额不能为空"

    On Error Resume Next

    DoCmd.RunCommand acCmdUndo

    Exit Sub

End If

If Error.Number <> 0 Then

MsgBox Error.Description

End If

End Sub

 

Private Sub Command删除_Click()

On Error Resume Next

DoCmd.SetWarnings (False)

If MsgBox("是否删除该记录", vbYesNo) = vbYes Then

DoCmd.RunCommand acCmdDeleteRecord

MsgBox "删除成功"

DoCmd.Close acForm, Me.Name

Else

Exit Sub

End If

If Error.Number <> 0 Then

MsgBox Error.Description

End If

End Sub

 

教材数据表(数据表形式窗体)


Private Sub Form_BeforeUpdate(Cancel As Integer)

On Error GoTo 数据更新前提醒_Err

 

    If (MsgBox("是否保存对记录的修改", 1, "修改记录提醒") = 1) Then

        Beep

    Else

        DoCmd.RunCommand acCmdUndo

    End If

 

 

数据更新前提醒_Exit:

    Exit Sub

 

数据更新前提醒_Err:

    MsgBox Error$

    Resume 数据更新前提醒_Exit

End Sub

 

考试费查询数据表(数据表形式窗体)


Private Sub Form_BeforeUpdate(Cancel As Integer)

On Error GoTo 数据更新前提醒_Err

 

    If (MsgBox("是否保存对记录的修改", 1, "修改记录提醒") = 1) Then

        Beep

    Else

        DoCmd.RunCommand acCmdUndo

    End If

 

 

数据更新前提醒_Exit:

    Exit Sub

 

数据更新前提醒_Err:

    MsgBox Error$

    Resume 数据更新前提醒_Exit

End Sub

 

Private Sub 考试费ID_DblClick(Cancel As Integer)

DoCmd.OpenForm "考试费更新删除", acNormal, , "考试费ID=" & Me.考试费ID

End Sub

 

考试费查询添加


Private Sub Command清空_Click()

考试名称.Value = ""

学号.Value = ""

考试费.Value = ""

已收金额.Value = ""

交费日期.Value = ""

备注.Value = ""

End Sub

 

Private Sub Command全部_Click()

Me.数据表子窗体.Form.FilterOn = False

End Sub

 

Private Sub Command生成报表_Click()

If Me.查询类型 <> "" And Me.查询内容 <> "" Then

DoCmd.OpenReport "考试费报表", acViewReport, , Me.查询类型 & " like '*" & Me.查询内容 & "*'"

Else

DoCmd.OpenReport "考试费报表", acViewReport

End If

End Sub

 

Private Sub Command查询_Click()

If Me.查询类型 <> "" And Me.查询内容 <> "" Then

Me.数据表子窗体.Form.Filter = Me.查询类型 & " like '*" & Me.查询内容 & "*'"

Me.数据表子窗体.Form.FilterOn = True

Else

Me.数据表子窗体.Form.FilterOn = False

End If

End Sub

 

Private Sub Command添加_Click()

If 考试名称.Value <> "" And 学号.Value <> "" And 考试费.Value <> "" And 已收金额.Value <> "" Then

    DoCmd.SetWarnings (False)

    DoCmd.OpenQuery "考试费添加查询", acViewNormal

    MsgBox "添加完成"

    Me.数据表子窗体.Requery

Else

    MsgBox "考试名称,学号,考试费,已收金额不能为空"

    Exit Sub

End If

End Sub

 

Private Sub 交费日期_DblClick(Cancel As Integer)

Me.交费日期.Value = Date

End Sub

 

Private Sub 考试名称_AfterUpdate()

If Me.考试名称.Value <> "" Then

Me.考试费.Value = Nz(DLookup("考试费", "考试表", "考试名称='" & Me.考试名称.Value & "'"), "")

Else

Me.考试费.Value = ""

End If

End Sub

 

Private Sub 考试名称_Change()

If Me.考试名称.Value <> "" Then

Me.考试费.Value = Nz(DLookup("考试费", "考试表", "考试名称='" & Me.考试名称.Value & "'"), "")

Else

Me.考试费.Value = ""

End If

End Sub

 

考试费更新删除


Private Sub Form_BeforeUpdate(Cancel As Integer)

If 考试名称.Value <> "" And 学号.Value <> "" And 考试费.Value <> "" And 已收金额.Value <> "" Then

On Error GoTo 数据更新前提醒_Err

 

    If (MsgBox("是否保存对记录的修改", 1, "修改记录提醒") = 1) Then

        Beep

    Else

        DoCmd.RunCommand acCmdUndo

    End If

 

Else

    MsgBox "考试名称,学号,考试费,已收金额不能为空"

    On Error Resume Next

    DoCmd.RunCommand acCmdUndo

    Exit Sub

End If

数据更新前提醒_Exit:

    Exit Sub

 

数据更新前提醒_Err:

    MsgBox Error$

    Resume 数据更新前提醒_Exit

End Sub

 

Private Sub Form_Close()

On Error Resume Next

Forms("考试费查询添加").Form.数据表子窗体.Requery

End Sub

 

Private Sub 交费日期_DblClick(Cancel As Integer)

Me.交费日期.Value = Date

End Sub

 

Private Sub 考试名称_AfterUpdate()

If Me.考试名称.Value <> "" Then

Me.考试费.Value = Nz(DLookup("考试费", "考试表", "考试名称='" & Me.考试名称.Value & "'"), "")

Else

Me.考试费.Value = ""

End If

End Sub

 

Private Sub 考试名称_Change()

If Me.考试名称.Value <> "" Then

Me.考试费.Value = Nz(DLookup("考试费", "考试表", "考试名称='" & Me.考试名称.Value & "'"), "")

Else

Me.考试费.Value = ""

End If

End Sub

 

Private Sub Command更新_Click()

If 考试名称.Value <> "" And 学号.Value <> "" And 考试费.Value <> "" And 已收金额.Value <> "" Then

    On Error Resume Next

    DoCmd.RunCommand acCmdSaveRecord

Else

    MsgBox "考试名称,学号,考试费,已收金额不能为空"

    On Error Resume Next

    DoCmd.RunCommand acCmdUndo

    Exit Sub

End If

If Error.Number <> 0 Then

MsgBox Error.Description

End If

End Sub

 

Private Sub Command删除_Click()

On Error Resume Next

DoCmd.SetWarnings (False)

If MsgBox("是否删除该记录", vbYesNo) = vbYes Then

DoCmd.RunCommand acCmdDeleteRecord

MsgBox "删除成功"

DoCmd.Close acForm, Me.Name

Else

Exit Sub

End If

If Error.Number <> 0 Then

MsgBox Error.Description

End If

End Sub

 

考试数据表(数据表形式窗体)


Private Sub Form_BeforeUpdate(Cancel As Integer)

On Error GoTo 数据更新前提醒_Err

 

    If (MsgBox("是否保存对记录的修改", 1, "修改记录提醒") = 1) Then

        Beep

    Else

        DoCmd.RunCommand acCmdUndo

    End If

 

 

数据更新前提醒_Exit:

    Exit Sub

 

数据更新前提醒_Err:

    MsgBox Error$

    Resume 数据更新前提醒_Exit

End Sub

 

其他费查询数据表(数据表形式窗体)


Private Sub Form_BeforeUpdate(Cancel As Integer)

On Error GoTo 数据更新前提醒_Err

 

    If (MsgBox("是否保存对记录的修改", 1, "修改记录提醒") = 1) Then

        Beep

    Else

        DoCmd.RunCommand acCmdUndo

    End If

 

 

数据更新前提醒_Exit:

    Exit Sub

 

数据更新前提醒_Err:

    MsgBox Error$

    Resume 数据更新前提醒_Exit

End Sub

 

Private Sub 其他费ID_DblClick(Cancel As Integer)

DoCmd.OpenForm "其他费更新删除", acNormal, , "其他费ID=" & Me.其他费ID

End Sub

 

其他费查询添加


Private Sub Command清空_Click()

费用名称.Value = ""

学号.Value = ""

其他费.Value = ""

已收金额.Value = ""

交费日期.Value = ""

备注.Value = ""

End Sub

 

Private Sub Command全部_Click()

Me.数据表子窗体.Form.FilterOn = False

End Sub

 

Private Sub Command生成报表_Click()

If Me.查询类型 <> "" And Me.查询内容 <> "" Then

DoCmd.OpenReport "其他费报表", acViewReport, , Me.查询类型 & " like '*" & Me.查询内容 & "*'"

Else

DoCmd.OpenReport "其他费报表", acViewReport

End If

End Sub

 

Private Sub Command查询_Click()

If Me.查询类型 <> "" And Me.查询内容 <> "" Then

Me.数据表子窗体.Form.Filter = Me.查询类型 & " like '*" & Me.查询内容 & "*'"

Me.数据表子窗体.Form.FilterOn = True

Else

Me.数据表子窗体.Form.FilterOn = False

End If

End Sub

 

Private Sub Command添加_Click()

If 费用名称.Value <> "" And 学号.Value <> "" And 其他费.Value <> "" And 已收金额.Value <> "" Then

    DoCmd.SetWarnings (False)

    DoCmd.OpenQuery "其他费添加查询", acViewNormal

    MsgBox "添加完成"

    Me.数据表子窗体.Requery

Else

    MsgBox "费用名称,学号,其他费,已收金额不能为空"

    Exit Sub

End If

End Sub

 

Private Sub 交费日期_DblClick(Cancel As Integer)

Me.交费日期.Value = Date

End Sub

 

其他费更新删除


Private Sub Form_BeforeUpdate(Cancel As Integer)

If 费用名称.Value <> "" And 学号.Value <> "" And 其他费.Value <> "" And 已收金额.Value <> "" Then

On Error GoTo 数据更新前提醒_Err

 

    If (MsgBox("是否保存对记录的修改", 1, "修改记录提醒") = 1) Then

        Beep

    Else

        DoCmd.RunCommand acCmdUndo

    End If

 

Else

    MsgBox "费用名称,学号,其他费,已收金额不能为空"

    On Error Resume Next

    DoCmd.RunCommand acCmdUndo

    Exit Sub

End If

数据更新前提醒_Exit:

    Exit Sub

 

数据更新前提醒_Err:

    MsgBox Error$

    Resume 数据更新前提醒_Exit

End Sub

 

Private Sub Form_Close()

On Error Resume Next

Forms("其他费查询添加").Form.数据表子窗体.Requery

End Sub

 

Private Sub 交费日期_DblClick(Cancel As Integer)

Me.交费日期.Value = Date

End Sub

 

Private Sub Command更新_Click()

If 费用名称.Value <> "" And 学号.Value <> "" And 其他费.Value <> "" And 已收金额.Value <> "" Then

    On Error Resume Next

    DoCmd.RunCommand acCmdSaveRecord

Else

    MsgBox "费用名称,学号,其他费,已收金额不能为空"

    On Error Resume Next

    DoCmd.RunCommand acCmdUndo

    Exit Sub

End If

If Error.Number <> 0 Then

MsgBox Error.Description

End If

End Sub

 

Private Sub Command删除_Click()

On Error Resume Next

DoCmd.SetWarnings (False)

If MsgBox("是否删除该记录", vbYesNo) = vbYes Then

DoCmd.RunCommand acCmdDeleteRecord

MsgBox "删除成功"

DoCmd.Close acForm, Me.Name

Else

Exit Sub

End If

If Error.Number <> 0 Then

MsgBox Error.Description

End If

End Sub

 

宿舍数据表(数据表形式窗体)


Private Sub Form_BeforeUpdate(Cancel As Integer)

On Error GoTo 数据更新前提醒_Err

 

    If (MsgBox("是否保存对记录的修改", 1, "修改记录提醒") = 1) Then

        Beep

    Else

        DoCmd.RunCommand acCmdUndo

    End If

 

 

数据更新前提醒_Exit:

    Exit Sub

 

数据更新前提醒_Err:

    MsgBox Error$

    Resume 数据更新前提醒_Exit

End Sub

 

学费查询数据表(数据表形式窗体)


Private Sub Form_BeforeUpdate(Cancel As Integer)

On Error GoTo 数据更新前提醒_Err

 

    If (MsgBox("是否保存对记录的修改", 1, "修改记录提醒") = 1) Then

        Beep

    Else

        DoCmd.RunCommand acCmdUndo

    End If

 

 

数据更新前提醒_Exit:

    Exit Sub

 

数据更新前提醒_Err:

    MsgBox Error$

    Resume 数据更新前提醒_Exit

End Sub

 

Private Sub 学费ID_DblClick(Cancel As Integer)

DoCmd.OpenForm "学费更新删除", acNormal, , "学费ID=" & Me.学费ID

End Sub

 

学费查询添加


Private Sub Command清空_Click()

学期.Value = ""

学号.Value = ""

学费.Value = ""

已收金额.Value = ""

交费日期.Value = ""

备注.Value = ""

End Sub

 

Private Sub Command全部_Click()

Me.数据表子窗体.Form.FilterOn = False

End Sub

 

Private Sub Command生成报表_Click()

If Me.查询类型 <> "" And Me.查询内容 <> "" Then

DoCmd.OpenReport "学费报表", acViewReport, , Me.查询类型 & " like '*" & Me.查询内容 & "*'"

Else

DoCmd.OpenReport "学费报表", acViewReport

End If

End Sub

 

Private Sub Command查询_Click()

If Me.查询类型 <> "" And Me.查询内容 <> "" Then

Me.数据表子窗体.Form.Filter = Me.查询类型 & " like '*" & Me.查询内容 & "*'"

Me.数据表子窗体.Form.FilterOn = True

Else

Me.数据表子窗体.Form.FilterOn = False

End If

End Sub

 

Private Sub Command添加_Click()

If 学期.Value <> "" And 学号.Value <> "" And 学费.Value <> "" And 已收金额.Value <> "" Then

    DoCmd.SetWarnings (False)

    DoCmd.OpenQuery "学费添加查询", acViewNormal

    MsgBox "添加完成"

    Me.数据表子窗体.Requery

Else

    MsgBox "学期,学号,学费,已收金额不能为空"

    Exit Sub

End If

End Sub

 

Private Sub 交费日期_DblClick(Cancel As Integer)

Me.交费日期.Value = Date

End Sub

 

Private Sub 学期_AfterUpdate()

If Me.学期.Value <> "" Then

Me.学费.Value = Nz(DLookup("学费", "学期表", "学期='" & Me.学期.Value & "'"), "")

Else

Me.学费.Value = ""

End If

End Sub

 

Private Sub 学期_Change()

If Me.学期.Value <> "" Then

Me.学费.Value = Nz(DLookup("学费", "学期表", "学期='" & Me.学期.Value & "'"), "")

Else

Me.学费.Value = ""

End If

End Sub

 

学费更新删除


Private Sub Form_BeforeUpdate(Cancel As Integer)

If 学期.Value <> "" And 学号.Value <> "" And 学费.Value <> "" And 已收金额.Value <> "" Then

On Error GoTo 数据更新前提醒_Err

 

    If (MsgBox("是否保存对记录的修改", 1, "修改记录提醒") = 1) Then

        Beep

    Else

        DoCmd.RunCommand acCmdUndo

    End If

 

Else

    MsgBox "学期,学号,学费,已收金额不能为空"

    On Error Resume Next

    DoCmd.RunCommand acCmdUndo

    Exit Sub

End If

数据更新前提醒_Exit:

    Exit Sub

 

数据更新前提醒_Err:

    MsgBox Error$

    Resume 数据更新前提醒_Exit

End Sub

 

Private Sub Form_Close()

On Error Resume Next

Forms("学费查询添加").Form.数据表子窗体.Requery

End Sub

 

Private Sub 交费日期_DblClick(Cancel As Integer)

Me.交费日期.Value = Date

End Sub

 

Private Sub 学期_AfterUpdate()

If Me.学期.Value <> "" Then

Me.学费.Value = Nz(DLookup("学费", "学期表", "学期='" & Me.学期.Value & "'"), "")

Else

Me.学费.Value = ""

End If

End Sub

 

Private Sub 学期_Change()

If Me.学期.Value <> "" Then

Me.学费.Value = Nz(DLookup("学费", "学期表", "学期='" & Me.学期.Value & "'"), "")

Else

Me.学费.Value = ""

End If

End Sub

 

Private Sub Command更新_Click()

If 学期.Value <> "" And 学号.Value <> "" And 学费.Value <> "" And 已收金额.Value <> "" Then

    On Error Resume Next

    DoCmd.RunCommand acCmdSaveRecord

Else

    MsgBox "学期,学号,学费,已收金额不能为空"

    On Error Resume Next

    DoCmd.RunCommand acCmdUndo

    Exit Sub

End If

If Error.Number <> 0 Then

MsgBox Error.Description

End If

End Sub

 

Private Sub Command删除_Click()

On Error Resume Next

DoCmd.SetWarnings (False)

If MsgBox("是否删除该记录", vbYesNo) = vbYes Then

DoCmd.RunCommand acCmdDeleteRecord

MsgBox "删除成功"

DoCmd.Close acForm, Me.Name

Else

Exit Sub

End If

If Error.Number <> 0 Then

MsgBox Error.Description

End If

End Sub

 

学期数据表(数据表形式窗体)


Private Sub Form_BeforeUpdate(Cancel As Integer)

On Error GoTo 数据更新前提醒_Err

 

    If (MsgBox("是否保存对记录的修改", 1, "修改记录提醒") = 1) Then

        Beep

    Else

        DoCmd.RunCommand acCmdUndo

    End If

 

 

数据更新前提醒_Exit:

    Exit Sub

 

数据更新前提醒_Err:

    MsgBox Error$

    Resume 数据更新前提醒_Exit

End Sub

 

学生查询添加


Private Sub Command清空_Click()

学号.Value = ""

姓名.Value = ""

性别.Value = ""

班级.Value = ""

联系方式.Value = ""

End Sub

 

Private Sub Command全部_Click()

Me.数据表子窗体.Form.FilterOn = False

End Sub

 

Private Sub Command查询_Click()

If Me.查询类型 <> "" And Me.查询内容 <> "" Then

Me.数据表子窗体.Form.Filter = Me.查询类型 & " like '*" & Me.查询内容 & "*'"

Me.数据表子窗体.Form.FilterOn = True

Else

Me.数据表子窗体.Form.FilterOn = False

End If

End Sub

Private Sub Command生成报表_Click()

If Me.查询类型 <> "" And Me.查询内容 <> "" Then

DoCmd.OpenReport "学生信息标签", acViewReport, , Me.查询类型 & " like '*" & Me.查询内容 & "*'"

Else

DoCmd.OpenReport "学生信息标签", acViewReport

End If

End Sub

 

Private Sub Command添加_Click()

If Me.学号 = "" Then

MsgBox "学号不能为空"

Exit Sub

End If

If Nz(DCount("学号", "学生信息表", "学号='" & Me.学号 & "'"), 0) > 0 Then

MsgBox "学号已存在,不能重复"

Exit Sub

End If

DoCmd.SetWarnings (False)

DoCmd.OpenQuery "学生信息添加查询", acViewNormal

MsgBox "添加完成"

Me.数据表子窗体.Requery

End Sub

 

学生更新删除


Private Sub Command更新_Click()

If 学号.Value <> "" Then

    On Error Resume Next

    DoCmd.RunCommand acCmdSaveRecord

    Forms("学生查询添加").数据表子窗体.Form.Requery

Else

    MsgBox "学号不能为空"

    On Error Resume Next

    DoCmd.RunCommand acCmdUndo

    Exit Sub

End If

If Error.Number <> 0 Then

MsgBox Error.Description

End If

End Sub

 

Private Sub Command删除_Click()

On Error Resume Next

DoCmd.SetWarnings (False)

If MsgBox("是否删除该记录", vbYesNo) = vbYes Then

DoCmd.RunCommand acCmdDeleteRecord

MsgBox "删除成功"

DoCmd.Close acForm, Me.Name

Forms("学生查询添加").数据表子窗体.Form.Requery

Else

Exit Sub

End If

If Error.Number <> 0 Then

MsgBox Error.Description

End If

End Sub

 

Private Sub Form_BeforeUpdate(Cancel As Integer)

If 学号.Value <> "" Then

On Error GoTo 数据更新前提醒_Err

 

    If (MsgBox("是否保存对记录的修改", 1, "修改记录提醒") = 1) Then

        Beep

    Else

        DoCmd.RunCommand acCmdUndo

    End If

 

Else

    MsgBox "学号不能为空"

    On Error Resume Next

    DoCmd.RunCommand acCmdUndo

    Exit Sub

End If

数据更新前提醒_Exit:

    Exit Sub

 

数据更新前提醒_Err:

    MsgBox Error$

    Resume 数据更新前提醒_Exit

End Sub

 

Private Sub Form_Close()

On Error Resume Next

Forms("学生查询添加").Form.数据表子窗体.Requery

End Sub

 

Private Sub Command更新_Click()

If 学号.Value <> "" Then

    On Error Resume Next

    DoCmd.RunCommand acCmdSaveRecord

Else

    MsgBox "学号不能为空"

    On Error Resume Next

    DoCmd.RunCommand acCmdUndo

    Exit Sub

End If

If Error.Number <> 0 Then

MsgBox Error.Description

End If

End Sub

 

Private Sub Command删除_Click()

On Error Resume Next

DoCmd.SetWarnings (False)

If MsgBox("是否删除该记录", vbYesNo) = vbYes Then

DoCmd.RunCommand acCmdDeleteRecord

MsgBox "删除成功"

DoCmd.Close acForm, Me.Name

Else

Exit Sub

End If

If Error.Number <> 0 Then

MsgBox Error.Description

End If

End Sub

 

学生信息查询数据表(数据表形式窗体)


Private Sub Form_BeforeUpdate(Cancel As Integer)

On Error GoTo 数据更新前提醒_Err

 

    If (MsgBox("是否保存对记录的修改", 1, "修改记录提醒") = 1) Then

        Beep

    Else

        DoCmd.RunCommand acCmdUndo

    End If

 

 

数据更新前提醒_Exit:

    Exit Sub

 

数据更新前提醒_Err:

    MsgBox Error$

    Resume 数据更新前提醒_Exit

End Sub

 

住宿费查询数据表(数据表形式窗体)


Private Sub Form_BeforeUpdate(Cancel As Integer)

On Error GoTo 数据更新前提醒_Err

 

    If (MsgBox("是否保存对记录的修改", 1, "修改记录提醒") = 1) Then

        Beep

    Else

        DoCmd.RunCommand acCmdUndo

    End If

 

 

数据更新前提醒_Exit:

    Exit Sub

 

数据更新前提醒_Err:

    MsgBox Error$

    Resume 数据更新前提醒_Exit

End Sub

 

Private Sub 住宿费ID_DblClick(Cancel As Integer)

DoCmd.OpenForm "住宿费更新删除", acNormal, , "住宿费ID=" & Me.住宿费ID

End Sub

 

住宿费查询添加


Private Sub Command查询_Click()

If Me.查询类型 <> "" And Me.查询内容 <> "" Then

Me.数据表子窗体.Form.Filter = Me.查询类型 & " like '*" & Me.查询内容 & "*'"

Me.数据表子窗体.Form.FilterOn = True

Else

Me.数据表子窗体.Form.FilterOn = False

End If

End Sub

 

Private Sub Command清空_Click()

宿舍名称.Value = ""

住宿时间.Value = ""

学号.Value = ""

住宿费.Value = ""

已收金额.Value = ""

交费日期.Value = ""

备注.Value = ""

End Sub

 

Private Sub Command全部_Click()

Me.数据表子窗体.Form.FilterOn = False

End Sub

 

Private Sub Command生成报表_Click()

If Me.查询类型 <> "" And Me.查询内容 <> "" Then

DoCmd.OpenReport "住宿费报表", acViewReport, , Me.查询类型 & " like '*" & Me.查询内容 & "*'"

Else

DoCmd.OpenReport "住宿费报表", acViewReport

End If

End Sub

 

Private Sub Command添加_Click()

If 宿舍名称.Value <> "" And 学号.Value <> "" And 住宿费.Value <> "" And 已收金额.Value <> "" And 住宿时间.Value <> "" Then

    DoCmd.SetWarnings (False)

    DoCmd.OpenQuery "住宿费添加查询", acViewNormal

    MsgBox "添加完成"

    Me.数据表子窗体.Requery

Else

    MsgBox "宿舍名称,住宿时间,学号,住宿费,已收金额不能为空"

    Exit Sub

End If

End Sub

 

Private Sub 交费日期_DblClick(Cancel As Integer)

Me.交费日期.Value = Date

End Sub

 

Private Sub 宿舍名称_AfterUpdate()

If Me.宿舍名称.Value <> "" Then

Me.住宿费.Value = Nz(DLookup("住宿费", "宿舍表", "宿舍名称='" & Me.宿舍名称.Value & "'"), "")

Else

Me.住宿费.Value = ""

End If

End Sub

 

Private Sub 宿舍名称_Change()

If Me.宿舍名称.Value <> "" Then

Me.住宿费.Value = Nz(DLookup("住宿费", "宿舍表", "宿舍名称='" & Me.宿舍名称.Value & "'"), "")

Else

Me.住宿费.Value = ""

End If

End Sub

 

住宿费更新删除


Private Sub Form_BeforeUpdate(Cancel As Integer)

If 宿舍名称.Value <> "" And 学号.Value <> "" And 住宿费.Value <> "" And 已收金额.Value <> "" And 住宿时间.Value <> "" Then

On Error GoTo 数据更新前提醒_Err

 

    If (MsgBox("是否保存对记录的修改", 1, "修改记录提醒") = 1) Then

        Beep

    Else

        DoCmd.RunCommand acCmdUndo

    End If

 

Else

    MsgBox "宿舍名称,住宿时间,学号,住宿费,已收金额不能为空"

    On Error Resume Next

    DoCmd.RunCommand acCmdUndo

    Exit Sub

End If

数据更新前提醒_Exit:

    Exit Sub

 

数据更新前提醒_Err:

    MsgBox Error$

    Resume 数据更新前提醒_Exit

End Sub

 

Private Sub Form_Close()

On Error Resume Next

Forms("住宿费查询添加").Form.数据表子窗体.Requery

End Sub

 

Private Sub 交费日期_DblClick(Cancel As Integer)

Me.交费日期.Value = Date

End Sub

 

Private Sub 宿舍名称_AfterUpdate()

If Me.宿舍名称.Value <> "" Then

Me.住宿费.Value = Nz(DLookup("住宿费", "宿舍表", "宿舍名称='" & Me.宿舍名称.Value & "'"), "")

Else

Me.住宿费.Value = ""

End If

End Sub

 

Private Sub 宿舍名称_Change()

If Me.宿舍名称.Value <> "" Then

Me.住宿费.Value = Nz(DLookup("住宿费", "宿舍表", "宿舍名称='" & Me.宿舍名称.Value & "'"), "")

Else

Me.住宿费.Value = ""

End If

End Sub

 

Private Sub Command更新_Click()

If 宿舍名称.Value <> "" And 学号.Value <> "" And 住宿费.Value <> "" And 已收金额.Value <> "" And 住宿时间.Value <> "" Then

    On Error Resume Next

    DoCmd.RunCommand acCmdSaveRecord

Else

    MsgBox "宿舍名称,住宿时间,学号,住宿费,已收金额不能为空"

    On Error Resume Next

    DoCmd.RunCommand acCmdUndo

    Exit Sub

End If

If Error.Number <> 0 Then

MsgBox Error.Description

End If

End Sub

 

Private Sub Command删除_Click()

On Error Resume Next

DoCmd.SetWarnings (False)

If MsgBox("是否删除该记录", vbYesNo) = vbYes Then

DoCmd.RunCommand acCmdDeleteRecord

MsgBox "删除成功"

DoCmd.Close acForm, Me.Name

Else

Exit Sub

End If

If Error.Number <> 0 Then

MsgBox Error.Description

End If

End Sub

 


【学校收费管理系统】(VBA版)-Access数据库系统设计制作实例 代码分享的评论 (共 条)

分享到微博请遵守国家法律