Reports

4.20 Disegnare una griglia in un report tabellare con righe ad altezza variabile
  Alessandro Cardi
Nel database di esempio allegato a questa FAQ è mostrato come sia possibile disegnare una griglia in un report tabellare anche se le righe sono ad altezza variabile.
Per realizzare questo occorre impostare a Si la proprietà Espandibile di tutti i controlli del corpo del report e impostare a Trasparente la loro proprietà Stile bordo.
Quindi a fronte dell'evento "Su stampa" del corpo del report generare il seguente codice VBA:
Private Sub Corpo_Print(Cancel As Integer, PrintCount As Integer)
'Routine che permette la visualizzazione della griglia in report tabulare
Dim ctl As Control
Dim altezza As Double
Dim daMargine As Double
altezza = 0
'Cerco l’altezza massima
For Each ctl In Me.Corpo.Controls
    If ctl.ControlType = acTextBox Then
        If ctl.Height > altezza Then
            altezza = ctl.Height
        End If
    End If
Next ctl
daMargine = 0
'Disegno i rettangoli attorno ad ogni campo
For Each ctl In Me.Corpo.Controls
    If ctl.ControlType = acTextBox Then
        Me.Line (daMargine, 0)-(daMargine + ctl.Width, altezza), , B
        daMargine = daMargine + ctl.Width
    End If
Next ctl
End Sub
Questa soluzione è attuabile con tutte le versioni di Access.

Download:
 
  GrigliaReport.zip (19Kb) MSAccess97 database


Se pensate di avere del materiale freeware interessante e volete pubblicarlo, allora leggete qui.