You have two ways, no one is very easy to implement, and another solution I'd prefer if possible.
The first way is writing an ADO.NET provider. You would use the whole ADO.NET set of methods, but this would require you to implement a SQL parser. If you do that, you could adopt LINQ to Entities writing a ADO.NET Entity Provider (please note ADO.NET Entity will be in beta until mid-2008).
The second way is writing a LINQ extension - in this way you might not implement a SQL parser, but you should still implement some typical operation like joins, sorts and so on.
The alternative solution I'd follow is to simply move the whole VB6 db out to a SQL Server database (or some other RDBMS). Since this would require a read-once algorithm that extracts data from a single table each time, it's much more easy to implement. Of course, this doesn't allow the use of VB6 application on migrated data.
Marco