注意:由于我对Access相对较新,所以请耐心等待...我所学的一切都是通过必要的Google搜索获得的。
因此,我正在创建一个表单,其唯一目的是搜索数据库。在一个使用案例中,用户可以选择多个选项来过滤搜索结果,出于隐私原因,我们可以说“蓝色、绿色、红色、棕色”。用户可以选择任意组合的这些颜色,包括全部或部分。在数据库表中,有一个主键(在我们的情况下,是ItemID)。表中的其他列是上述颜色(蓝色、绿色、红色、棕色)。由于数据的结构(注意:由于多种原因,我不能更改它),我必须通过VBA创建这个SQL查询,而不是使用Access提供的方法。
以下是我在按下“搜索”按钮时用于创建和运行查询的代码:
经过多次搜索,除了使用ADO之外,这是我找到的唯一一种在VBA中创建SQL查询并在VBA中运行它的方法。虽然该方法可行,但缺点是它会创建一个查询,每次运行查询之前都必须将其关闭和删除。对于将要使用这个功能的用户来说,这是不可接受的。
我找到的所有示例(请包容)都使用ADO,但我无法使其正常工作。我有两个数据库,一个用于查询和表单,另一个用于数据本身。包含数据的数据库将其表连接到具有查询和表单的数据库。我不确定ADO是否可以在此设置中工作,如果可以,我也无法弄清楚。
以Java/Webdev背景为基础,使用Access让我感到有些沮丧,因为它似乎使事情变得更加复杂(依我之见)。有人可以帮助我正确地使其工作吗?
感谢您的时间...非常感谢!
因此,我正在创建一个表单,其唯一目的是搜索数据库。在一个使用案例中,用户可以选择多个选项来过滤搜索结果,出于隐私原因,我们可以说“蓝色、绿色、红色、棕色”。用户可以选择任意组合的这些颜色,包括全部或部分。在数据库表中,有一个主键(在我们的情况下,是ItemID)。表中的其他列是上述颜色(蓝色、绿色、红色、棕色)。由于数据的结构(注意:由于多种原因,我不能更改它),我必须通过VBA创建这个SQL查询,而不是使用Access提供的方法。
以下是我在按下“搜索”按钮时用于创建和运行查询的代码:
Set qdf = Nothing
*Logic to create SQL query... variable to hold query is called sqlStr*
Set qdf = CurrentDb.CreateQueryDef("TemporaryQuery", sqlStr)
DoCmd.OpenQuery qdf.Name
经过多次搜索,除了使用ADO之外,这是我找到的唯一一种在VBA中创建SQL查询并在VBA中运行它的方法。虽然该方法可行,但缺点是它会创建一个查询,每次运行查询之前都必须将其关闭和删除。对于将要使用这个功能的用户来说,这是不可接受的。
我找到的所有示例(请包容)都使用ADO,但我无法使其正常工作。我有两个数据库,一个用于查询和表单,另一个用于数据本身。包含数据的数据库将其表连接到具有查询和表单的数据库。我不确定ADO是否可以在此设置中工作,如果可以,我也无法弄清楚。
以Java/Webdev背景为基础,使用Access让我感到有些沮丧,因为它似乎使事情变得更加复杂(依我之见)。有人可以帮助我正确地使其工作吗?
感谢您的时间...非常感谢!
Me.Subform.SourceObject = "sbfSearchAuthorizations"
。 - Zaider