如何用VBA代码更新access中的表记录,我的其中一段代码出现了问题(更新操作 .AddNew)

Private Sub Command14_Click()
Dim rst As ADODB.Recordset
Dim number As Integer
Dim sql As String

If IsNull(Me![仓库编号]) Then
    MsgBox "请选择仓库"
    DoCmd.GoToControl "仓库编号"
ElseIf IsNull(Me![商品编号]) Then
    MsgBox "请选择商品编号"
    DoCmd.GoToControl "商品编号"
ElseIf IsNull(Me![数量]) Then
    MsgBox "请选择数量"
    DoCmd.GoToControl "数量"
ElseIf IsNull(Me![经手员工编号]) Then
    MsgBox "请选择经手员工编号"
    DoCmd.GoToControl "经手员工编号"
ElseIf IsNull(Me![出库日期]) Then
    MsgBox "请选择出库日期"
    DoCmd.GoToControl "出库日期"
ElseIf IsNull(Me![订单编号]) Then
    MsgBox "请选择订单编号"
    DoCmd.GoToControl "订单编号"
ElseIf IsNull(Me![送货方式]) Then
    MsgBox "请选择送货方式"
    DoCmd.GoToControl "送货方式"
Else
    sql = "select * from 商品表 where 商品编号='" & Me.商品编号 & "'"
    Set rst = New ADODB.Recordset
    rst.ActiveConnection = CurrentProject.Connection
    rst.CursorType = adOpenDynamic
    rst.LockType = adLockOptimistic
    rst.Open sql
    If Not (rst.EOF) Then
        '修改库存信息
        sql = "select *from 商品表 where 仓库编号='" & Me.仓库编号 & "'and 商品编号='" & Me.商品编号 & "'"
        Set rst = New ADODB.Recordset
        rst.ActiveConnection = CurrentProject.Connection
        rst.CursorType = adOpenDynamic
        rst.LockType = adLockOptimistic
        rst.Open sql
        If Not (rst.EOF) Then
            number = rst!数量
            number = number - Me![数量]
            rst!数量 = number
            'rst.Close
            'Set rst = Nothing
            sql = "当前库存数量为:" & number
            MsgBox sql
            Exit Sub
        Else
            rst.Close
            Set rst = Nothing
            MsgBox "没有该商品的库存信息,不能出库"
            Exit Sub
        End If
    '添加出库记录
        sql = "select * from 出库记录表"
        rst.Close
        Set rst = Nothing
        Set rst = New ADODB.Recordset
        rst.ActiveConnection = CurrentProject.Connection
        rst.CursorType = adOpenKeyset
        rst.LockType = adLockOptimistic
        rst.Open sql

With rst

.AddNew

.Update = Me![仓库编号]

!商品编号 = Me![商品编号]

!数量 = Me![数量]

!经手员工编号 = Me![经手员工编号]

!出库日期 = Me![出库日期]

!订单编号 = Me![订单编号]

!送货方式 = Me![送货方式]

End With

rst.Close

Set rst = Nothing

    Else
        rst.Close
        Set rst = Nothing
        MsgBox "系统中没有该商品的信息,请先添加商品详细信息"
        Exit Sub
        Me.Visible = False
    End If
End If

End Sub

加粗的代码不能正常执行
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问

相似问题

1
Excel VBA中两行几乎相同的代码,为什么标黄的提示错误,而标红的可以运行?
2
Excel VBA如何取消关闭时的工程密码输入框?
1
如何利用VBA把若干工作簿里的表保存到一个新建的工作簿里?
1
请问各位大神如何使用vba代码将excel中不同sheet中的表格内容点都点使用邮件发送
1
VBA代码实现“自定义自动筛选方式”对话框的调用
2
如何通过VBA获得EXCEL中的页数
0
VBA读取Excel单元格数据,处理后再写入该表中的其他位置,怎么实现?
0
ACCESS 数据库 vba 数据类型不匹配
2
VBA有什么其他的代替方案吗?
1
vba 比对任意两个excel表的内容并返回不同处
0
跪求一段 VBA 或 python、R、Matlab 数据分析代码
2
如何用VBA批量操作数据透视表
1
怎样用VBA语句判断word中句号“.”之前的字符是不是数字
1
vba 中怎么样才能将字符串控件转成实际控件?
1
在excel里用vba代码控制鼠标,用到mouseeventf_absolute win10电脑就没反应了,win7是可以的,怎么回事呢
1
VBA如何实现利润最大化
0
Excel VBA中把多个Excel数据的某一列导入到另一个新的Excel的sheet中(导入的列在一个sheet里)。VBA小白 谢谢大家
0
vba 中MsChart图表中,在任意一个数据上添加一条十字标示线的做法?
0
请问用Word VBA如何实现遍历被限制文档中的窗体域并向其中插入文字?(Word界面如下图所示)
1
excel2016 64bit的vba中使用API函数RegisterClass注册窗体类就Excel就崩溃