For this purpose Use RDC
The Crystal Reports, Report Design Component(RDC) is an in-process ActiveX DLL based on the Component Object Model (COM). Crystal Reports RDC satisfies all of your dynamic reporting needs.
Technical Support reference to the RDC examples contained in the downloadable file ASPXMPS85.exe that you will found on Crystal Decision web site
First create your report on DAta source Active Data(Field definition)or (.ttx)
then write these code in VB
'Creating an Application Object
Set CRPapp = CreateObject("Crystal.CRPE.Application"

'Create Report object
Set CRPreport = CRPapp.OpenReport("ReportNameWithPAth.rpt"

'Create Report database object
Set crpDatabase = CRPreport.Database
'Create report database table collections object
Set crpDatabaseTables = crpDatabase.Tables
'Create table object
Set crpDatabaseTable = crpDatabaseTables.Item(1)
'Create your Recordset in VB like rs
'Assign your recordset rs to table object
crpDatabaseTable.SetPrivateData 3, rs
'Set report selection formula"
CRPreport.RecordSelectionFormula = "Your select formula if any"
'Sort your report on any field
CRPreport.RecordSortFields.Add Asc/dec, fieldName
CRPreport.ReadRecords
'to display report on screen
CRPreport.Preview Title, Left, Top, Width, Height, style, parentwindow
For more detail read Crrdc.hlp file that you find in your machine at this location c:\Frogram File\Seagate Software\Report Designer Component\crrdc.hlp