AgostinoX
AgostinoX

Reputation: 7683

resizing a subreport in ms access

I've got a MS Access form that contains a subreport.
This is to allow a sort of dynamic preview of what you are going to get when you launch the print (in fact it's a form that allows to chose among different print layouts). Let's say that my report is this:

Report

It has also non-fixed fields, but it's not relevant for this issue. The report is quite small and when presented in the form I would like to apply some sort of zoom, which actually I can't find. Even if the subform/subreport control is much larger than the report, there seems not to exist a property that allows you to resize the report.

Form design

The result is this:

report not resizing

I tried setting Default View to Print Preview, no changes in visualization.
I hoped that switching to Print Preview would allow a greater control of the zoom (like actually happens when you launch a 'standard' print preview).
I tried setting FitToPage to true.
I tried to set AllowReportView to force the Print Preview, with no luck. At this point i think Print Preview is simply not allowed in a report inside a form. Is there some (or some other) way to address this smallness problem?
Thanks in advance
P.S. If zooming is not possible, I would at least highlight the real report area because showing only the borders of the subform/subreport control would be confusing in this case.

form with highlighted report size

Upvotes: 0

Views: 330

Answers (1)

June7
June7

Reputation: 21379

Correct, report on form can only be displayed in ReportView. I don't think you can get 'zoom' feature by any method. As for 'highlight' of report area, code could set Backcolor property of each report section when report loads, like:

Private Sub Report_Load()
With Me
    If .CurrentView = 6 Then
        .ReportHeader.BackColor = vbYellow
        .ReportFooter.BackColor = vbYellow
        .PageHeaderSection.BackColor = vbYellow
        .PageFooterSection.BackColor = vbYellow
        .GroupHeader0.BackColor = vbYellow
        .GroupFooter1.BackColor = vbYellow
        .Detail.BackColor = vbYellow
    End If
End With
End Sub

Might want to set all controls with transparent BackStyle.

Or instead of setting Backcolor, use a background image (watermark) on report.

Upvotes: 1

Related Questions