1

我正在为一所学校创建一个简单的数据库。我目前有两种形式,即frmStudentsfrmGrades。我使用等级来指代 1、2、3、..、12 年级,而不是考试成绩。frmGrades 包含字段等级(主键)和费用。frmStudents 包含ID(主键)、namegradefees等。ID 是自动生成的数字,名称是文本,grade 与 frmGrades 中的字段 Grade 相关联。

我打算先用 frmGrades 输入所有成绩和相应的费用。然后我将学生信息输入到 frmStudents 从成绩列表中选择一个成绩。我的问题是如何根据所选等级自动填充费用值?

我需要在 VBA 中实现这一点,但我根本不熟悉这种语言。在伪代码中,这就是我想要实现的目标:

Private Sub frmStudents_Grade_AfterUpdate()

    frmStudents.Fees.text = "Select Fees from frmGrades where frmGrades.Grade = frmStudents.Grade"

End Sub

我希望我的问题很清楚。提前致谢。

4

1 回答 1

0

首先,你真的想这样做吗?该费用已在 Grades 中可用,那么您需要在 Student 中使用它吗?如果你这样做,是因为费用发生了变化吗?另外,学生每年的费用和成绩不会不同,所以你需要第三张桌子:

StudentID
Date
Grade
Fee

但是,如果您的设计真的如此简单,请将费用作为一个列包含在成绩组合中,并从组合列更新绑定到学生费用的文本框。

学生表格上的成绩组合

Row Source: SELECT Grade, Fee FROM Grades ORDER BY Grade
Bound Column : 1
Column Count : 2
Column Widthes: 2,0

更新后

Me.txtFee = Me.cboGrade.Column(1)
于 2012-09-29T13:31:31.833 回答