根据用户输入的Microsoft Access过滤报告

问题描述 投票:0回答:2

如果这是一个简单/直接的解决方案,我深表歉意,但是我是Access的新手,我的报告一直存在一些问题。

我创建了一个报告模板,我想基于特定的ID号打开一个单页报告。然后,报告中的所有字段均从关联的IDENT NO中生成。按照目前的状态,当我打开报表时,它将在“报表数据”表中为每个ID号创建一个单页报表。

相反,当用户尝试打开报告时,我希望它提示用户输入他们要查找的特定报告的标识号,以便它仅打开与输入的IDENT相关的单个1页报告编号

关于如何实现这种过滤的任何想法?

ms-access access-vba ms-access-2010
2个回答
0
投票

您可以显示一个输入框供用户插入ID,然后打开并过滤报告。

Dim id As String
    id = InputBox("Enter the identification number:", "YourInputBoxTitle")

'if a value was entered, open and filter report
If Len(Trim(id)) > 0 Then
    DoCmd.OpenReport "ReportName", acViewPreview, , "[IDENT NO] = " & id, acWindowNormal
End If

0
投票

[在查询条件或报表设计视图中的任何位置,您都可以输入[IdentNoVariable](即使其他位置不存在此变量!我不确定为什么这样...),并且将出现一个对话框,要求您“输入参数值”为IdentNoVariable。

例如,如果您想在查询过程中限制ID号(例如报表所调用的查询):

enter image description here

出现的对话框在运行查询时出现,并且在查询条件中具有该变量的文本。通过在报告的任何部分中输入[IdentNoVariable]代替已存在的变量,可以在报告中完成同一操作。

© www.soinside.com 2019 - 2024. All rights reserved.