Moved to reporting section.
Create your reports in Access.
To call them from VB, set a reference to the Microsoft Access X.X Object Library (where X.X is the version installed on your machine.)
Then, use code like this:
VB Code:
Private Sub cmdPrintReport_Click()
Set Axs = CreateObject("Access.Application")
Axs.OpenCurrentDatabase (DBPath)
Axs.DoCmd.OpenReport "MyReport"
Set Axs = Nothing
Axs.Quit
End Sub
Where MyReport is the name of the report that you have previously created in Access.
I don't see drawbacks. I've used Access reports from VB before with great success.