사용자가 양식의 콤보 상자에서 선택한 보고서를 기반으로 보고서를 열고 필터링하려고합니다.하나의 양식에서 다른 보고서를 동적으로 열고 필터링합니다.
먼저 내가 보고서를 열어 해요 : : 예를 단순화하기 위해, 여기에 내가 다루고있어 새로운 기능이 잘 작동
Dim strReportName As String
strReportName = "General Information"
DoCmd.OpenReport strReportName, acViewPreview
, 내가 노력하고있어 문제 arrises이 필터를 적용 할 수 있습니다.
With Reports!strReportName
.Filter = strFilter
.FilterOn = True
End With
나는이 방법으로 변수 reportname을 사용하는 것이 불가능한 것 같습니다.
Run-time error '2451':
The report name 'strReportName' you entered is misspelled or refers to a report that
isn't open or doesn't exist.
내 질문은 : 다음과 같이 말할 필요도없이, VBA에 의해 슬로우 오류는 나를 VBA에 reportnames를 하드 코딩 할 필요없이 현재 열려 보고서를 필터링시키는에이 사항을 변경할 수있는 방법이 있습니까?
유일한 방법 I이다 그것의 [** 프로그램 적으로 모듈을 삽입 **] (http://stackoverflow.com/questions/18978839/dynamically-create-dynamic-arrays-in-vba/18979499#18979499)라고 생각할 수 있으며 strReportName을 실제 이름. 나는 그런 식으로하는 것을 권장하지 않겠지 만, 내가 알고있는 유일한 해결책이다. –