| 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: |