我正在使用Access 2010.现在我有一个名为SetQuerySource的函数:
Private Sub SetQuerySource()
Dim sql As String
sql = DLookup("QueryText", "tblQuery", "QueryName ='qselDailyMilkYield'")
CurrentDb.QueryDefs("qselDailyMilkYield").sql = sql
sql = sql & vbCrLf & "where pt.DLVDate between '" & Me.txtDate
& "' AND '" & Me.txtEndDate & "' and pb.ITEMID like '%pm%' and pjb.ITEMID
like '%pm%' group by pt.ITEMID, pb.ITEMID, pt.NAME, pt.DLVDATE"
CurrentDb.QueryDefs("qselDailyMilkYield").sql = sql
End Sub
我使用它来运行位于Access数据库中名为tblQuery的表中的查询。然后我使用VBA将Where子句附加到查询中(如上所示)我需要指向一个命名控件,它根据用户输入保存一个值。
我进入了这个设置。我的意思是我没有创建这个函数我刚刚开始使用它。我的问题是如何指向不同服务器上的不同数据库?我需要运行的查询已经链接到这个Access数据库的表(通过ODBC连接)但我对OpenDatabase的搜索证明是徒劳的,因为我不知道如何在我的环境中使用它。
我收到此错误:
[Microsoft] [ODBC SQL Server驱动程序] [SQL Server]无效的对象名称“dbo.MilkReceived”。 (#208)
Private Sub cmdTruckDeliveries_Click()
SetQuerySource
DoCmd.OpenReport "rptTruckDeliveries", acViewPreview
End Sub
这是按钮点击事件jic的代码。
谢谢,