在vba Form中插入值时输入参数值

时间:2018-03-15 19:52:20

标签: ms-access

我希望每次Employee Id出现时都插入Window

  

输入参数值Ad001

Ad001是me.mstrEMpID的价值。

这是我的程序:

Dim db
Dim tmpempid As String
tmpempid = (Me.mstrEmpID)
sqlqry1 = "INSERT INTO Timesheet ([StrEMPId]) VALUES ( TmpEmpId );"
DoCmd.OpenTable "Timesheet"
DoCmd.SetWarnings False
DoCmd.RunSQL sqlqry1
DoCmd.SetWarnings True

你知道出了什么问题吗?

2 个答案:

答案 0 :(得分:0)

您需要连接值以创建SQL命令:

sqlqry1 = "INSERT INTO Timesheet ([StrEMPId], [Ad002]) VALUES (" & TmpEmpId & ", " & ValueForAd002 & ");"

有两个参数:

d3.select(g[i])

答案 1 :(得分:0)

您需要使用字符串连接和分隔符,如下所示:

Dim tmpempid As String
tmpempid = (Me.mstrEmpID)
sqlqry1 = "INSERT INTO Timesheet ([StrEMPId]) VALUES ( '" & tmpempid & "');"
DoCmd.SetWarnings False
DoCmd.RunSQL sqlqry1
DoCmd.SetWarnings True

或者做得恰当,并使用参数:

With CurrentDb.CreateQueryDef("", "INSERT INTO Timesheet ([StrEMPId]) VALUES (?);")
    .Parameters(0) = Me.mstrEmpID
    .Execute
End With