我在使用vb和access做工资管理系统的过程中,遇到了一个这样的错误:
Run - time error '3426'
该操作被关联对象取消
代码如下:
Private Sub Command7_Click()
Data2.Recordset.MoveFirst
While (Data2.Recordset.EOF <> False)
If (Data2.Recordset("编号") = Combo1.Text) Then
jbt = jbt + Val(Data2.Recordset("加班时间"))
End If
Data2.Recordset.MoveNext
Wend
Data3.Recordset.MoveFirst
Do While (Data3.Recordset.EOF <> False)
If (Data3.Recordset("编号") = Combo1.Text) Then
lb1 = Data3.Recordset("人员类别")
Exit Do
End If
Data3.Recordset.MoveNext
Loop
Data1.Recordset.MoveFirst
Do While (Data1.Recordset.EOF <> False)
If (Data1.Recordset("人员类别") = lb1) Then
jbbz = Val(Data1.Recordset("加班费"))
Exit Do
End If
Data1.Recordset.MoveNext
Loop
jbf = jbt * jbbz
Text3.Text = Str(jbf)
Data3.Recordset.MoveFirst
While (Data3.Recordset.EOF <> False)
If (Data3.Recordset("编号") = Combo1.Text) Then
lb2 = Data3.Recordset("人员类别")
End If
Data3.Recordset.MoveNext
Wend
Data1.Recordset.MoveFirst
While (Data1.Recordset.EOF <> False)
If (Data1.Recordset("人员类别") = lb2) Then
rcbt = Data1.Recordset("日常补贴")
ccbt = Data1.Recordset("出差补贴")
End If
Data1.Recordset.MoveNext
Wend
Data2.Recordset.MoveFirst
While (Data2.Recordset.EOF <> False)
If (Data2.Recordset("编号") = Combo1.Text) Then
qj = 0
cc = 0
dg = 0
Select Case cq
Case Is = "请假"
qj = qj + 1
Case Is = "出差"
cc = cc + 1
Case Else
dg = dg + 1
End Select
End If
Data2.Recordset.MoveNext
Wend
btf = dg * Val(rcbt) + cc * Val(ccbt)
Text4.Text = Str(btf)
Data3.Recordset.MoveFirst
While (Data3.Recordset.EOF <> False)
If (Data3.Recordset("编号") = Combo1.Text) Then
lb3 = Data3.Recordset("人员类别")
End If
Data3.Recordset.MoveNext
Wend
Data1.Recordset.MoveFirst
While (Data1.Recordset.EOF <> False)
If (Data1.Recordset("人员类别") = lb3) Then
jbbz = Val(Data1.Recordset("基本工资"))
End If
Data1.Recordset.MoveNext
Wend
jbgz = jbbz * dg
Text7.Text = Str(jbgz)
Data3.Recordset.MoveFirst
While (Data3.Recordset.EOF <> False)
If (Data3.Recordset("编号") = Combo1.Text) Then
lb4 = Data3.Recordset("人员类别")
End If
Data3.Recordset.MoveNext
Wend
Data1.Recordset.MoveFirst
While (Data1.Recordset.EOF <> False)
If (Data1.Recordset("人员类别") = lb4) Then
sdbz = Data1.Recordset("水电费")
xjbz = Data1.Recordset("修建扣费")
End If
Data1.Recordset.MoveNext
Wend
sdf = dg * Val(sdbz)
xjf = Val(xjbz) * 30
zkf = sdf + xjf
Text6.Text = Str(zkf)
zj = jbgz + jbf + btf + Val(Data3.Recordset("奖金")) - zkf
Text8.Text = Str(zj)
rq = Date
Text5.Text = rq
End Sub
错误在第九行:Data3.Recordset.MoveFirst
拜托高手帮忙,急用,多谢!
Run - time error '3426'
该操作被关联对象取消
代码如下:
Private Sub Command7_Click()
Data2.Recordset.MoveFirst
While (Data2.Recordset.EOF <> False)
If (Data2.Recordset("编号") = Combo1.Text) Then
jbt = jbt + Val(Data2.Recordset("加班时间"))
End If
Data2.Recordset.MoveNext
Wend
Data3.Recordset.MoveFirst
Do While (Data3.Recordset.EOF <> False)
If (Data3.Recordset("编号") = Combo1.Text) Then
lb1 = Data3.Recordset("人员类别")
Exit Do
End If
Data3.Recordset.MoveNext
Loop
Data1.Recordset.MoveFirst
Do While (Data1.Recordset.EOF <> False)
If (Data1.Recordset("人员类别") = lb1) Then
jbbz = Val(Data1.Recordset("加班费"))
Exit Do
End If
Data1.Recordset.MoveNext
Loop
jbf = jbt * jbbz
Text3.Text = Str(jbf)
Data3.Recordset.MoveFirst
While (Data3.Recordset.EOF <> False)
If (Data3.Recordset("编号") = Combo1.Text) Then
lb2 = Data3.Recordset("人员类别")
End If
Data3.Recordset.MoveNext
Wend
Data1.Recordset.MoveFirst
While (Data1.Recordset.EOF <> False)
If (Data1.Recordset("人员类别") = lb2) Then
rcbt = Data1.Recordset("日常补贴")
ccbt = Data1.Recordset("出差补贴")
End If
Data1.Recordset.MoveNext
Wend
Data2.Recordset.MoveFirst
While (Data2.Recordset.EOF <> False)
If (Data2.Recordset("编号") = Combo1.Text) Then
qj = 0
cc = 0
dg = 0
Select Case cq
Case Is = "请假"
qj = qj + 1
Case Is = "出差"
cc = cc + 1
Case Else
dg = dg + 1
End Select
End If
Data2.Recordset.MoveNext
Wend
btf = dg * Val(rcbt) + cc * Val(ccbt)
Text4.Text = Str(btf)
Data3.Recordset.MoveFirst
While (Data3.Recordset.EOF <> False)
If (Data3.Recordset("编号") = Combo1.Text) Then
lb3 = Data3.Recordset("人员类别")
End If
Data3.Recordset.MoveNext
Wend
Data1.Recordset.MoveFirst
While (Data1.Recordset.EOF <> False)
If (Data1.Recordset("人员类别") = lb3) Then
jbbz = Val(Data1.Recordset("基本工资"))
End If
Data1.Recordset.MoveNext
Wend
jbgz = jbbz * dg
Text7.Text = Str(jbgz)
Data3.Recordset.MoveFirst
While (Data3.Recordset.EOF <> False)
If (Data3.Recordset("编号") = Combo1.Text) Then
lb4 = Data3.Recordset("人员类别")
End If
Data3.Recordset.MoveNext
Wend
Data1.Recordset.MoveFirst
While (Data1.Recordset.EOF <> False)
If (Data1.Recordset("人员类别") = lb4) Then
sdbz = Data1.Recordset("水电费")
xjbz = Data1.Recordset("修建扣费")
End If
Data1.Recordset.MoveNext
Wend
sdf = dg * Val(sdbz)
xjf = Val(xjbz) * 30
zkf = sdf + xjf
Text6.Text = Str(zkf)
zj = jbgz + jbf + btf + Val(Data3.Recordset("奖金")) - zkf
Text8.Text = Str(zj)
rq = Date
Text5.Text = rq
End Sub
错误在第九行:Data3.Recordset.MoveFirst
拜托高手帮忙,急用,多谢!
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货