如果复选框被选中则更新记录
Updating record if checkbox is checked
我正在创建一个简单的 POS 系统,但 运行 出错了。在结帐表单上,它显示一个发票 ID、我的 [购物车] table 中商品的子表单、结帐按钮和 3 个复选框:已售出无税、已售税和内部使用。我想要的是,如果您 select cboxSoldNoTax 并单击结帐,[购物车] 中的所有项目将更新为字段 "SoldNoTax." 下的 'Yes' 但问题是当我单击结帐按钮时,我会收到此错误消息:
运行-时间错误'3464':
条件表达式中的数据类型不匹配。
下面是我的 vba 代码:
Private Sub btnCheckout_Click()
txtInvoice.Value = DMax("InvoiceID", "Invoice")
If cboxSoldTax.Value = True Then
DoCmd.RunSQL "UPDATE [Cart] SET SoldTax = 'Yes' WHERE InvoiceID = '" & Me.txtInvoice & "'"
End If
If cboxInternal.Value = True Then
DoCmd.RunSQL "UPDATE [Cart] SET InternalUse = 'Yes' WHERE InvoiceID = '" & Me.txtInvoice & "'"
End If
If cboxSoldNoTax.Value = True Then
DoCmd.RunSQL "UPDATE [Cart] SET SoldNoTax = 'Yes' WHERE InvoiceID = '" & Me.txtInvoice & "'"
End If
End Sub
我还提供了一个link到access数据库。以下是使用数据库的说明:"Start" 表单 -> 主菜单 -> Flask -> Select 数量 -> 添加到购物车 -> 结帐按钮 -> Select 3 个中的任何一个复选框 -> 结帐按钮。
https://drive.google.com/file/d/0Bye-M8FI1tRUYm9QT3o5a0tyMkE/view?usp=sharing
任何帮助或建议都会很棒。提前致谢!
如果InternalUse.InvoiceID
的数据类型是数字而不是文本,则去掉Me.txtInvoice
前后的单引号:
" ... WHERE InvoiceID = " & Me.txtInvoice
我正在创建一个简单的 POS 系统,但 运行 出错了。在结帐表单上,它显示一个发票 ID、我的 [购物车] table 中商品的子表单、结帐按钮和 3 个复选框:已售出无税、已售税和内部使用。我想要的是,如果您 select cboxSoldNoTax 并单击结帐,[购物车] 中的所有项目将更新为字段 "SoldNoTax." 下的 'Yes' 但问题是当我单击结帐按钮时,我会收到此错误消息:
运行-时间错误'3464':
条件表达式中的数据类型不匹配。
下面是我的 vba 代码:
Private Sub btnCheckout_Click()
txtInvoice.Value = DMax("InvoiceID", "Invoice")
If cboxSoldTax.Value = True Then
DoCmd.RunSQL "UPDATE [Cart] SET SoldTax = 'Yes' WHERE InvoiceID = '" & Me.txtInvoice & "'"
End If
If cboxInternal.Value = True Then
DoCmd.RunSQL "UPDATE [Cart] SET InternalUse = 'Yes' WHERE InvoiceID = '" & Me.txtInvoice & "'"
End If
If cboxSoldNoTax.Value = True Then
DoCmd.RunSQL "UPDATE [Cart] SET SoldNoTax = 'Yes' WHERE InvoiceID = '" & Me.txtInvoice & "'"
End If
End Sub
我还提供了一个link到access数据库。以下是使用数据库的说明:"Start" 表单 -> 主菜单 -> Flask -> Select 数量 -> 添加到购物车 -> 结帐按钮 -> Select 3 个中的任何一个复选框 -> 结帐按钮。
https://drive.google.com/file/d/0Bye-M8FI1tRUYm9QT3o5a0tyMkE/view?usp=sharing
任何帮助或建议都会很棒。提前致谢!
如果InternalUse.InvoiceID
的数据类型是数字而不是文本,则去掉Me.txtInvoice
前后的单引号:
" ... WHERE InvoiceID = " & Me.txtInvoice