尝试从“发票”表中的最新记录中获取RecieptNumber(自动编号),以将值存储在变量invoiceNum(整数)中。
Dim rstInvoices As Recordset
Set cdCurrentDatabase = CurrentDb
Set rstInvoices = cdCurrentDatabase.OpenRecordset("SELECT LAST ([RecieptNumber]) FROM Invoices;")
invoiceNum = rstInvoices("[RecieptNumber]").Value
昨天开始进行VBA编程,感谢我能够理解的任何帮助。
答案 0 :(得分:2)
你想要做的事情如下:
SELECT TOP 1 RecieptNumber FROM Invoices ORDER BY RecieptNumber DESC
这将对它们进行排序,以便最后一条记录在列表中排在第一位,然后它将获取第一条记录。当然,假设RecieptNumber是按数字顺序创建的。
它让我烦恼,所以我会添加它 - 它应该是ReceiptNumber,而不是RecieptNumber ......
答案 1 :(得分:0)
rstInvoices
的字符串参数必须引用通过执行Select语句实际返回的字段。但查询不返回字段RecieptNumber
,而是返回没有指定名称的Last(RecieptNumber)
。因此,您首先要使用AS
子句为该聚合列命名:
SELECT LAST(RecieptNumber) AS LastNumber ...
现在您可以在VBA中引用该字段:
invoiceNum = rstInvoices("[LastNumber]").Value