我有下面的代码,它工作得很好。
Dim result As Integer
result = 20
DoCmd.RunSQL "INSERT INTO ReportingTable (BUDGETPER1) VALUES (" & result & ");"
我并不是真的想硬编码20 而是用SELECT语句来填充。
select PD01 from SetVariables WHERE VariableType = 'HEADCOUNT' and BusinessUnit = 511
(这个SELECT语句的结果是20,我已经测试过了,没有问题)
最简单的方法是什么?我知道在这个特定的例子中,我可以使用Dlookup来实现所需的结果,但我需要搞清楚用select语句定义变量的概念。
你可以使用一个 SELECT
查询来确定要插入到表中的数据。
Sub sInsertData()
Dim db As DAO.Database
Dim strSQL As String
Set db = DBEngine(0)(0)
strSQL = "INSERT INTO ReportingTable (BUDGETPER1) " _
& " SELECT PD01 FROM SetVariables " _
& " WHERE VariableType='headcount' AND BusinessUnit=511;"
db.Execute strSQL
Set db = Nothing
End Sub
你也可以根据需要用其他值替换 "人数 "和 "511"。
请注意。