using just CR bound straight to the tables, nothing really comes to mind...because I am assuming that when a vehicle is out on the road, the data is basically a start and stop time, not based on a time of the day.
so you would need to create data that converts the start/stop times to multiple records for each hour (or part there of, I am again assuming), and creating data in cr is fairly hard.
with that in mind, the ideas that come to mind are:
1) create a command object that has the dates desired broken down into hours so that you can link on them (not sure if this is possible)
2) my standard solution, create a stored procedure. In the stored procedure, you can easily pass in the start date/time and end date/time (if time is even a desired parameter). You can then create a table of date times and populate a table with the vehicles that out on the road with start/stop time bracketing the specific time. This would allow you to 'create' multiple records per vehicle and accomplish the report's aim.
I do realize that a stored proc is at times not feasible, either because of lack of knowledge or privileges on the database or both.
Hopefully, one of these will lead to a solution.