A continuacion te enmvio un ejemplo de como filtro yo mi información en los reportes de Crystal Reports, es casi como si definieras un WHERE en SQL, solo omitiendo la palabra WHERE, pero cuando utilizas más de dos campos debes de utilizar el conector AND o el conector OR, es importante ver como está nombrado tu campo llave en Crystal Reports, pues de igual manera debes escribir el nombre en tu filtro.
Este ejemplo conecta una base de datos por medio de un ODBC
Private Sub s_Imprimir(byval str_Filtro1 as string)
Dim str_CadenaConexion As String
Dim str_Formula As String
' ***** Nombre del archivo que contiene el reporte
CrystaReportControl.ReportFileName = App.Path & "reporte.rpt"
' ***** Conecta con la Base de datos
CrystaReportControl.Connect = "DNS=MyDatabase;UID=User;PWD=PassWord"
' ***** Filtros
str_Formula = "{MyTabla.MyCampo1} = '" & Trim(str_Filtro1) & "' " & _
"AND {MyTabla.MyCampo2} = " & Trim(int_Filtro2) & " "
CrystaReportControl.SelectionFormula = str_Formula
' ***** Imprime reporte
CrystaReportControl.Action = 1
End Sub
Espero te sea de utilidad, me gustaría me avisaras como te fué