数据库中有工资表,包括“姓名”、“工资”和“职称”等字段,现要对不同职称的职工增加工资,规定教授职称增加15%,副教授职称增加10%,其他人员增加5%。下列程序的功能是按照上述规定调整每位职工的工资,并显示所涨工资的总和。请在空白处填入适当的语句,使程序可以完成指定的功能。 Private Sub Command3_Click() Dim ws As DAO.Workspaee Dim db As DAO.Database Dim rs As DAO.Reeordset Dim gz As DAO.Field Dim zc As DAO.Field Dim sum As Currency Dim rate As Single Set db=CurrentDb() Set rs=db.OpenRecordset("工资表") Set gz=rs.Fields("工资") Set ZC=rs.Fields("职称") Sum=0 Do While Not (14) rs.Edit Select Case ze Case Is="教授" rate=0.15 Case Is="副教授" rate=0.1 Case Else rate=0.05 End Select sum=sum+gz * rate gz=gz+gz * rate (15) rs.MoveNext Loop rs.Close db.Close Set rs=Nothing Set db=Nothing MsgBox"涨工资总计:" & sum End Sub
参考答案:(14) rs.EOF (15) rs.Update
解析: 本题考查的是VBA编程基础。本题要求对所有的行进行操作,即要从第一行到最后一行,控制的办法就是查看数据集的EOF值,如果为“Ture”就到了最后一行。而为了使while循环的循环体对每一行进行操作,就必须使其条件在最后一行时为“False”,因此使用Not rs.EOF。难点的Not已经由题目给出了。而对数据集进行操作之后,要使用Update进行更新才能继续下一行的操作。