打开带有过滤器的报告
Opening a Report With a Filter
我在 Access 中 table 有我用来生成报告的预算信息。
我的 table 中的一个字段称为“IsActive”。它在我的 table 属性中定义为 Yes/No 字段。
我想打开报表,只显示 IsActive 字段 = Yes 的行。
我尝试了以下方法:
DoCmd.OpenReport "BudgetTable", acViewReport, "WHERE IsActive = Yes"
和
DoCmd.OpenReport "BudgetTable", acViewReport, "WHERE IsActive = 1"
在这两种情况下,报告都显示了所有字段,包括 IsActive 设置为否的地方。
您的代码提供 WHERE
字符串作为 FilterName 参数 OpenReport ...
DoCmd.OpenReport "BudgetTable", acViewReport, "WHERE IsActive = 1"
^ ^ ^
| | |
ReportName View FilterName
将其作为 WhereCondition 提供...
DoCmd.OpenReport "BudgetTable", acViewReport, , "IsActive = True"
^ ^ ^ ^
| | | |
ReportName View FilterName WhereCondition
请注意文档将 WhereCondition 描述为 ...
"A string expression that's a valid SQL WHERE clause without the word WHERE."
因此请确保从 WhereCondition 字符串中删除 WHERE
。
我在 Access 中 table 有我用来生成报告的预算信息。
我的 table 中的一个字段称为“IsActive”。它在我的 table 属性中定义为 Yes/No 字段。
我想打开报表,只显示 IsActive 字段 = Yes 的行。
我尝试了以下方法:
DoCmd.OpenReport "BudgetTable", acViewReport, "WHERE IsActive = Yes"
和
DoCmd.OpenReport "BudgetTable", acViewReport, "WHERE IsActive = 1"
在这两种情况下,报告都显示了所有字段,包括 IsActive 设置为否的地方。
您的代码提供 WHERE
字符串作为 FilterName 参数 OpenReport ...
DoCmd.OpenReport "BudgetTable", acViewReport, "WHERE IsActive = 1"
^ ^ ^
| | |
ReportName View FilterName
将其作为 WhereCondition 提供...
DoCmd.OpenReport "BudgetTable", acViewReport, , "IsActive = True"
^ ^ ^ ^
| | | |
ReportName View FilterName WhereCondition
请注意文档将 WhereCondition 描述为 ...
"A string expression that's a valid SQL WHERE clause without the word WHERE."
因此请确保从 WhereCondition 字符串中删除 WHERE
。