我正在创建一个调用报告的表单。
我创建了一个包含参数和公式的报告:
?FromDate
?ToDate
@DateRange = If {Database.Date} >= ?FromDate And {Database.Date} <= ?ToDate
Then "Show"
Else "Hide"
我创建了一个源代码来传输两个日期输入:
Dim Date1 As String
Dim Date2 As String
If optDaily.Value = True Then
Date1 = txtDate1
Date2 = txtDate1
ElseIf optWeekly.Value = True Then
Date1 = txtDate1
Date2 = txtDate2
End If
With Report1
.ParameterFields(0) = "CDate(#" & Date1 & "#)"
.ParameterFields(1) = "CDate(#" & Date2 & "#)"
.Formulas(0) = "DateRange = 'Date Range : " & Date1 & " To " & Date2 & "'"
.ReportFileName = "C:\Location\Report.rpt"
.Action = 1
End With
当我执行代码时,应用程序返回错误:
Runtime-error: '20553'
Invalid parameter field name
更新
我通过将参数更改为公式来修复问题并编写了此代码:
.Formulas(0) = "FromDate = #" & CDate(Date1) & "#"
.Formulas(1) = "ToDate = #" & CDate(Date2) & "#"
所以我的下一个问题是:如果细节已经过时,我该如何隐藏它?