我对此有点陌生,所以请耐心等待。:)
我正在尝试向 Access 2007 数据库中的一个表单添加一个事件。这个想法是,通过在 CustomerNumber 字段中输入一个值,OrderNumber 字段将自动计算出该客户的下一个订单号。(如果该客户之前有两个订单,那么 OrderNumber 将为 3)
例如,假设我们有一张表:
Orders
CustomerNumber OrderNumber Description
1 1 Whatever
1 2 Blah
2 1 Yada
5 1 Yada
2 2 Yada
1 3 Foo
在这种情况下,如果我们键入 CustomerNumber =1,那么 OrderNumber 将看到该客户有三个先前的订单,因此 OrderNumber =4。
同样,如果 CustomerNumber = 2,则 OrderNumber = 3。
我有以下代码,但在设置对 Orders 表(变量 y)的引用时遇到问题,以便它可以计算该客户的订单数。
有任何想法吗?
Private Sub CustomerNumber_AfterUpdate()
Dim CustNo As Integer
Dim x As Integer
Dim y As Object
CustNo = CustomerNumber.Value
y = Nz(DLookup("CustomerNumber", "Orders"), "")
x = DCount("OrderNumber", "Orders", CustNo = y)
OrderNumber = x + 1
End Sub
提前致谢,
卡布拉尔