简体   繁体   中英

Open Subform in Access in New Window

I have a form in access ("F_Filter") where I indicate parameters to filter a datable. Form F_Filter also contains a subform which shows the filtered datatable results on the same screen. This subform with the filtered results is named "Child400." Its Source Object is "F_FilterResults".

I would like to be able to 1) open the subform in a new window so all I see are the filtered results and 2) export the results to Excel.

Normally I would be able to open a form in a new window by creating a button and creating an on click event with the following code

DoCmd.OpenForm "NameOfForm", acFormDS

However, this code does not work when I put in "Child400" as the NameOfForm. I think this is because Child400 is a subform and is not recognized by Access. I also tried DoCmd.OpenForm "[F_Filter]![Child400]", acFormDS to no avail. Note that I have also tried DoCmd.OpenForm "F_FilterResults", acFormDS which works fine but this table only contains the prefiltered results.

DoCmd.OpenForm "F_FilterResults"

is the correct form to open. "Child400" is (I assume) the name of the subform control. That is not a form that you can open.

Then you need to apply the same filter as you did to the subform instance. The same method you use now for the subform can be used for the separate form.

If you have trouble with that, please add the existing filter code to your question.

Edit

There is no magic behind what records a form shows. It is controlled by a couple of properties. The easiest way is probably to simply take them over to the new form.

Something like:

Sub OpenResults()

    Dim fSub As Form, fNew As Form

    Set fSub = Me!Child400.Form

    DoCmd.OpenForm "F_FilterResults", acFormDS
    Set fNew = Forms!F_FilterResults

    fNew.RecordSource = fSub.RecordSource   ' if you change the RecordSource in your code
    fNew.Filter = fSub.Filter
    fNew.FilterOn = fSub.FilterOn
    fNew.OrderBy = fSub.OrderBy
    fNew.OrderByOn = fSub.OrderByOn

End Sub

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM