Option 1: In a regular class, you can have some method create the recordset of interest and have a public property or method return the recordset object reference (for eg: rs) to the client form. Then set Datagrid1.Datasource = rs at run time in the client form.

Option 2: Use a datasource class. If memory serves me, you can see an example of this if you run the VB wizard for Dataproject and choose the datagrid option with ado class code. The wizard will generate the code.

Ralph