从另一个表单的文本框查询条件?

时间:2013-08-23 13:59:01

标签: sql ms-access ms-access-2010

我正在努力完成以下任务:

我想允许用户从表单的组合框中选择一个四分之一,然后单击“查看报告”按钮查看报告。表单的组合框每个季度编号有4个选项。在用户进行选择之后,将填充两个文本框(StartQuarterDateTextbox& EndQuarterDateTextbox),其中季度的开始日期为一个,而四分之一的结束日期为另一个。

我想在文本框中查看两个日期并查询表(在本例中为tblIdeaDetails表)。它应该采用此日期范围并选择具有ideaDateSubmitted字段的任何记录,该字段位于此日期范围之间或之间。问题是每次单击按钮时,Access都会提示我输入表单中的日期。

这就是我的查询(qryIdeasByQuarterDate):

SELECT tblIdeaDetails.ideaID, tblIdeaDetails.ideaDescription, tblIdeaDetails.ideaSubmitter, tblIdeaDetails.ideaDateSubmitted, tblIdeaDetails.ideaComments, tblBenefits.benefitAnimalWelfare, tblBenefits.benefitSafety, tblBenefits.benefitCostSavings, tblBenefits.benefitImprovedPractice, tblBenefits.benefitAdministrative, tblBenefits.benefitOther, tblStatus.status, tblStatus.statusComments, tblStatus.statusPayoutAmount
FROM (tblIdeaDetails INNER JOIN tblBenefits ON tblIdeaDetails.ideaID = tblBenefits.benefitID) INNER JOIN tblStatus ON tblIdeaDetails.ideaID = tblStatus.statusID
WHERE tblIdeaDetails.ideaDateSubmitted >= [Forms]![frmQuarter]![StartQuarterDateTextbox] And tblIdeaDetails.ideaDateSubmitted <= [Forms]![frmQuarter]![EndQuarterDateTextbox];

我的WHERE子句是否未正确设置?我尝试过使用括号和其他一些东西,但我在这里已经没有了想法。

1 个答案:

答案 0 :(得分:0)

听起来db引擎无法找到那些文本框。可能发生的原因包括:

  1. 表单未在表单视图中打开。
  2. 表单或文本框名称拼写错误。
  3. 查询从表单打开的Access应用程序会话外部运行。
  4. 如果这些都不适用,我所能建议的只是尝试简化查询,只关注文本框......并在访问合作之前进行攻击。

    创建2个新查询,每个查询都集中在其中一个文本框中。

    SELECT [Forms]![frmQuarter]![StartQuarterDateTextbox] AS start_date;
    
    SELECT [Forms]![frmQuarter]![EndQuarterDateTextbox] AS end_date;