没有环境,不测试了。说一下你原设计
rs.FindFirst "用户编号='" & YGBH & "'"
If rs.EOF Then ' 如果数据库中没有找到相同的用户编号就录入
rs.AddNew ' 添加新记录 《- 这里是添加了新记录
Else ' 如果数据库中已经存在相同的用户编号就更新 《- 添加新记录,这里不执行。这里应该是 end if,因为不得是查找到了,还是添加新记录后,都要执行后面的更新部分。
rs.Fields("地区").Value = XM
rs.Fields("本数").Value = PY
......
rs.UpdateBatch ' 保存更新的数据
End If 《- 对应的这句不要了。
rs.MoveNext ' 移动到下一条记录
Next i
-------------
或者在 if 里添加 用户编号 ,其他部分都是公菜
' 检查数据库中是否已存在相同的用户编号
rs.FindFirst "用户编号='" & YGBH & "'"
If rs.EOF Then ' 如果数据库中没有找到相同的用户编号就录入
rs.AddNew ' 添加新记录
rs.Fields("用户编号").Value = XB '写入用户编号
end if
' ------添加了数据后继续添加其他数据,查找到了更新该用户编号的其他数据-------
rs.Fields("地区").Value = XM
rs.Fields("本数").Value = PY
' rs.Fields("用户编号").Value = XB 这行就不要了,放到 if 里执行,不需重复写入
..........
-----------------
你其实应该生成 SQL 命令去写入。
rs.FindFirst "用户编号='" & YGBH & "'"
If rs.EOF Then ' 如果数据库中没有找到相同的用户编号就录入
rs.AddNew ' 添加新记录 《- 这里是添加了新记录
Else ' 如果数据库中已经存在相同的用户编号就更新 《- 添加新记录,这里不执行。这里应该是 end if,因为不得是查找到了,还是添加新记录后,都要执行后面的更新部分。
rs.Fields("地区").Value = XM
rs.Fields("本数").Value = PY
......
rs.UpdateBatch ' 保存更新的数据
End If 《- 对应的这句不要了。
rs.MoveNext ' 移动到下一条记录
Next i
-------------
或者在 if 里添加 用户编号 ,其他部分都是公菜
' 检查数据库中是否已存在相同的用户编号
rs.FindFirst "用户编号='" & YGBH & "'"
If rs.EOF Then ' 如果数据库中没有找到相同的用户编号就录入
rs.AddNew ' 添加新记录
rs.Fields("用户编号").Value = XB '写入用户编号
end if
' ------添加了数据后继续添加其他数据,查找到了更新该用户编号的其他数据-------
rs.Fields("地区").Value = XM
rs.Fields("本数").Value = PY
' rs.Fields("用户编号").Value = XB 这行就不要了,放到 if 里执行,不需重复写入
..........
-----------------
你其实应该生成 SQL 命令去写入。
授人于鱼,不如授人于渔
早已停用QQ了