Unless you're running the subreport for each record in the main report, you can't do this. Using shared variables, subreports can return single values. They WILL NOT return a dataset! Also, using data from a subreport you can only suppress the view of the records (Suppress Section in the Section Expert) that don't meet your requirements, you cannot suppress the actual selection of these records (in the Select Expert.)
If you can write SQL, a better way to handle this might be to create a "Command" that is a SQL select statement to get all of the data for your report. Frequently you can do things in SQL (like the complex filtering you're looking for) that you can't do when you just use tables in Crystal. You could also potentially create a view in the database that will return the data for your report.
-Dell