我试图简单地将一个表或表名传递给要在查询中使用的函数。问题是,我不知道整个表使用什么数据类型。
我的代码看起来像这样
querytable MyTable, SomethingElse
Sub querytable(table As String, string As String)
query1 = "insert into " & table & "(TABLEFIELD) values (" & string & ")"
DoCmd.RunSQL query1
End Sub
这对我没有用,任何帮助都是非常感谢的。
发布于 2013-08-29 19:33:50
对于您在这里要做的事情,您需要将表名作为字符串传递。
您的代码没有遵循许多常见的约定,包括避免在代码中使用保留字。
在使用变量之前,请确保声明所有变量。使用选项显式在所有模块的顶部。并且始终使用变量以外的数据类型声明变量。
您可以尝试类似于这样的代码:
Call InsertInto sTableName, sData
'or
'Call InsertInto "ActualTableName", "SomeValue"
Public Sub InsertInto(ByVal sTable As String, ByVal sValue As String)
Dim sSQL as String
sSQL = "INSERT INTO " & sTable & "(CompanyName) VALUES (" & sValue & ")"
Debug.Print sSQL
CurrentDb.Execute sSQL, dbFailOnError
End Sub
https://stackoverflow.com/questions/18519248
复制