下面是我自己做的软件,就三个按钮,在同一窗体,为什么我点击了第一部分的按钮后,再点第二部分,再点第三部分这时候会报错“无法为更新定位行。一些值可能已在取后一次读取后已更改。”,如果取启窗体后,再进行第二第三部分操作就没有问题。第一部分
Private Sub 重新排班_Click()If MsgBox("你确定要重新排班吗?", vbQuestion + vbYesNo + vbDefaultButton2, "温馨提示") = vbYes Then
Adodc3.Refresh
Adodc1.Refresh
'对车辆进行操作
If Adodc4.Recordset.RecordCount <> 0 Then
Adodc4.Recordset.MoveFirst
Do While Not Adodc4.Recordset.EOF
Adodc4.Recordset.Delete
Adodc4.Recordset.MoveNext
Loop
Do While Not Adodc3.Recordset.EOF
Adodc4.Recordset.AddNew
Adodc4.Recordset.Fields("车牌") = Adodc3.Recordset.Fields("车牌")
Adodc4.Recordset.Fields("车租") = Adodc3.Recordset.Fields("车租")
Adodc4.Recordset.Fields("车主") = Adodc3.Recordset.Fields("车主")
Adodc4.Recordset.Fields("系数") = Adodc3.Recordset.Fields("系数")
Adodc4.Recordset.Fields("是否固定") = 0
Adodc4.Recordset.Update
Adodc3.Recordset.MoveNext
Loop
Else
Do While Not Adodc3.Recordset.EOF
Adodc4.Recordset.AddNew
Adodc4.Recordset.Fields("车牌") = Adodc3.Recordset.Fields("车牌")
Adodc4.Recordset.Fields("车租") = Adodc3.Recordset.Fields("车租")
Adodc4.Recordset.Fields("车主") = Adodc3.Recordset.Fields("车主")
Adodc4.Recordset.Fields("系数") = Adodc3.Recordset.Fields("系数")
Adodc4.Recordset.Fields("是否固定") = ""
Adodc4.Recordset.Update
Adodc3.Recordset.MoveNext
Loop
End If
Adodc3.Refresh
'DataGrid1.Refresh
'Adodc4.Recordset.MoveFirst'Adodc4.Recordset.MovePrevious
'Adodc4.Refresh
'对排班司机进行操作
If Adodc2.Recordset.RecordCount <> 0 Then '如果表不为空,则进行删除
Adodc2.Recordset.MoveFirst '指针移到第一条记录
Do While Not Adodc2.Recordset.EOF
Adodc2.Recordset.Delete
Adodc2.Recordset.MoveNext
Loop
Do While Not Adodc1.Recordset.EOF
Adodc2.Recordset.AddNew
Adodc2.Recordset.Fields("司机编号") = Adodc1.Recordset.Fields("司机编号")
Adodc2.Recordset.Fields("姓名") = Adodc1.Recordset.Fields("姓名")
Adodc2.Recordset.Fields("是否固定") = Adodc1.Recordset.Fields("是否固定")
Adodc2.Recordset.Update
Adodc1.Recordset.MoveNext
'Adodc2.Recordset.MoveNext
Loop
Else
Do While Not Adodc1.Recordset.EOF
Adodc2.Recordset.AddNew
Adodc2.Recordset.Fields("司机编号") = Adodc1.Recordset.Fields("司机编号")
Adodc2.Recordset.Fields("姓名") = Adodc1.Recordset.Fields("姓名")
Adodc2.Recordset.Fields("是否固定") = Adodc1.Recordset.Fields("是否固定")
Adodc2.Recordset.Update
Adodc1.Recordset.MoveNext
'Adodc2.Recordset.MoveNext
Loop
End If
Adodc1.Refresh
'DataGrid2.Refresh
'Adodc2.Recordset.MoveFirst
'Adodc2.Recordset.MovePrevious
'Adodc2.Refresh
'DataGrid2.RefreshEnd If
End Sub
第二部分
Private Sub Command3_Click()
If Adodc4.Recordset.Fields("司机编号") <> "" Then
MsgBox "该的士已安排司机", , "提示"
ElseIf Adodc2.Recordset.RecordCount <> 0 Then
Adodc4.Recordset.Fields("司机编号") = Adodc2.Recordset.Fields("司机编号")
Adodc4.Recordset.Fields("姓名") = Adodc2.Recordset.Fields("姓名")
Adodc4.Recordset.Fields("是否固定") = Adodc2.Recordset.Fields("是否固定")
Adodc4.Recordset.Fields("日期") = CStr(Now())
Adodc4.Recordset.Update
Adodc2.Recordset.Delete
Adodc2.Recordset.Update
'Adodc2.Refresh
Else
MsgBox "所有司机已排班", , "提示"
End If
End Sub
第三部分
Private Sub Command4_Click()
'On Error GoTo error1:
If Adodc4.Recordset.Fields("司机编号") <> "" Then
Adodc2.Recordset.AddNew
Adodc2.Recordset.Fields("司机编号") = Adodc4.Recordset.Fields("司机编号")
Adodc2.Recordset.Fields("姓名") = Adodc4.Recordset.Fields("姓名")
Adodc2.Recordset.Fields("是否固定") = Adodc4.Recordset.Fields("是否固定")
Adodc2.Recordset.Update
Adodc4.Recordset.Fields("司机编号") = ""
Adodc4.Recordset.Fields("地址") = ""
Adodc4.Recordset.Fields("姓名") = ""
Adodc4.Recordset.Fields("日期") = ""
Adodc4.Recordset.Fields("油费") = Null
Adodc4.Recordset.Fields("公里") = Null
Adodc4.Recordset.Update
'Adodc2.Recordset.MoveFirst
'Adodc4.Recordset.MoveFirst
Else
MsgBox "该的士没有安排司机", , "提示"
'error1:
'Adodc2.Refresh
'MsgBox "该车没有安排司机", , "提示"
End If
End Sub
Private Sub 重新排班_Click()If MsgBox("你确定要重新排班吗?", vbQuestion + vbYesNo + vbDefaultButton2, "温馨提示") = vbYes Then
Adodc3.Refresh
Adodc1.Refresh
'对车辆进行操作
If Adodc4.Recordset.RecordCount <> 0 Then
Adodc4.Recordset.MoveFirst
Do While Not Adodc4.Recordset.EOF
Adodc4.Recordset.Delete
Adodc4.Recordset.MoveNext
Loop
Do While Not Adodc3.Recordset.EOF
Adodc4.Recordset.AddNew
Adodc4.Recordset.Fields("车牌") = Adodc3.Recordset.Fields("车牌")
Adodc4.Recordset.Fields("车租") = Adodc3.Recordset.Fields("车租")
Adodc4.Recordset.Fields("车主") = Adodc3.Recordset.Fields("车主")
Adodc4.Recordset.Fields("系数") = Adodc3.Recordset.Fields("系数")
Adodc4.Recordset.Fields("是否固定") = 0
Adodc4.Recordset.Update
Adodc3.Recordset.MoveNext
Loop
Else
Do While Not Adodc3.Recordset.EOF
Adodc4.Recordset.AddNew
Adodc4.Recordset.Fields("车牌") = Adodc3.Recordset.Fields("车牌")
Adodc4.Recordset.Fields("车租") = Adodc3.Recordset.Fields("车租")
Adodc4.Recordset.Fields("车主") = Adodc3.Recordset.Fields("车主")
Adodc4.Recordset.Fields("系数") = Adodc3.Recordset.Fields("系数")
Adodc4.Recordset.Fields("是否固定") = ""
Adodc4.Recordset.Update
Adodc3.Recordset.MoveNext
Loop
End If
Adodc3.Refresh
'DataGrid1.Refresh
'Adodc4.Recordset.MoveFirst'Adodc4.Recordset.MovePrevious
'Adodc4.Refresh
'对排班司机进行操作
If Adodc2.Recordset.RecordCount <> 0 Then '如果表不为空,则进行删除
Adodc2.Recordset.MoveFirst '指针移到第一条记录
Do While Not Adodc2.Recordset.EOF
Adodc2.Recordset.Delete
Adodc2.Recordset.MoveNext
Loop
Do While Not Adodc1.Recordset.EOF
Adodc2.Recordset.AddNew
Adodc2.Recordset.Fields("司机编号") = Adodc1.Recordset.Fields("司机编号")
Adodc2.Recordset.Fields("姓名") = Adodc1.Recordset.Fields("姓名")
Adodc2.Recordset.Fields("是否固定") = Adodc1.Recordset.Fields("是否固定")
Adodc2.Recordset.Update
Adodc1.Recordset.MoveNext
'Adodc2.Recordset.MoveNext
Loop
Else
Do While Not Adodc1.Recordset.EOF
Adodc2.Recordset.AddNew
Adodc2.Recordset.Fields("司机编号") = Adodc1.Recordset.Fields("司机编号")
Adodc2.Recordset.Fields("姓名") = Adodc1.Recordset.Fields("姓名")
Adodc2.Recordset.Fields("是否固定") = Adodc1.Recordset.Fields("是否固定")
Adodc2.Recordset.Update
Adodc1.Recordset.MoveNext
'Adodc2.Recordset.MoveNext
Loop
End If
Adodc1.Refresh
'DataGrid2.Refresh
'Adodc2.Recordset.MoveFirst
'Adodc2.Recordset.MovePrevious
'Adodc2.Refresh
'DataGrid2.RefreshEnd If
End Sub
第二部分
Private Sub Command3_Click()
If Adodc4.Recordset.Fields("司机编号") <> "" Then
MsgBox "该的士已安排司机", , "提示"
ElseIf Adodc2.Recordset.RecordCount <> 0 Then
Adodc4.Recordset.Fields("司机编号") = Adodc2.Recordset.Fields("司机编号")
Adodc4.Recordset.Fields("姓名") = Adodc2.Recordset.Fields("姓名")
Adodc4.Recordset.Fields("是否固定") = Adodc2.Recordset.Fields("是否固定")
Adodc4.Recordset.Fields("日期") = CStr(Now())
Adodc4.Recordset.Update
Adodc2.Recordset.Delete
Adodc2.Recordset.Update
'Adodc2.Refresh
Else
MsgBox "所有司机已排班", , "提示"
End If
End Sub
第三部分
Private Sub Command4_Click()
'On Error GoTo error1:
If Adodc4.Recordset.Fields("司机编号") <> "" Then
Adodc2.Recordset.AddNew
Adodc2.Recordset.Fields("司机编号") = Adodc4.Recordset.Fields("司机编号")
Adodc2.Recordset.Fields("姓名") = Adodc4.Recordset.Fields("姓名")
Adodc2.Recordset.Fields("是否固定") = Adodc4.Recordset.Fields("是否固定")
Adodc2.Recordset.Update
Adodc4.Recordset.Fields("司机编号") = ""
Adodc4.Recordset.Fields("地址") = ""
Adodc4.Recordset.Fields("姓名") = ""
Adodc4.Recordset.Fields("日期") = ""
Adodc4.Recordset.Fields("油费") = Null
Adodc4.Recordset.Fields("公里") = Null
Adodc4.Recordset.Update
'Adodc2.Recordset.MoveFirst
'Adodc4.Recordset.MoveFirst
Else
MsgBox "该的士没有安排司机", , "提示"
'error1:
'Adodc2.Refresh
'MsgBox "该车没有安排司机", , "提示"
End If
End Sub
解决方案 »
- 急需 vb的屏幕取词
- VB6调用excel的问题
- 老是出错,求助,关于RECORDSET
- 怎么我这样的换行,文段老是往下跳
- 如何使用VB向EXCEL中插入一个按钮?
- 图片存取程序?
- 问一个很简单的问题,路过的请帮我回答,,非常感谢!vb中的savefiledlalog 和openFiledialog控件在哪儿,我怎么找不到?请大家告诉我谢
- Excel中的一个奇怪问题:
- 各位大虾,怎样在运行时设置DBgrid的Datasuorce属性将其绑定到DATA控件上?急!在线等待。。。。
- 我用WorkShop自做一个HTML帮助文件叫:Help.chm,用VB怎样显示他?敬请各位高手指点。
- 在excel的VBA里如何获取日期和星期几
- 如何在VB中添加datagridview控件
2.数据库里的内容更新之后,要重新读取,否则数据库里的东西,和你读出来的数据集不一样,程序就会对不上。
1、为数据表增加自增长主键(ID)
2、为数据表增加一字段,程序控制此字段数据不重复。