Personally, having used both, I would opt for Crystal Reports anytime over Access. I like that I can create a very good looking report by quickly dragging and dropping (much easier than doing the same in Access) and I also like things like the custom grouping you can use. In other words, even though there is no field to group on, you can create your own groupings quickly and easily without touching the source. To rephrase that, let's say that I have a list of companies and I want to be able to display them in a regional format, but regions don't exist within the data. I can assign the companies to my own regions that I create in CR. Then, the data is aggregated, or displayed, by the custom groupings, which is a very nice feature.
Plus, aligning things within CR is much easier than in Access. Also, connecting to multiple data sources (for example, if I wanted to connect up to an Access database, a SQL Server database, and an Oracle database all for the same report) I can do it very quickly and easily without coding or an ODBC connection (using OLE DB). Plus, I can format the sections easier, supress items or sections much easier, create custom functions to use within the report, create multiple headers for different records, and the charting is much easier than using Access.
There are many, many more reasons why I would choose CR over Access if I had the choice. The thing to remember is that Access is designed to be a small business tool and that, while it has a lot built into it, Crystal Reports is designed as a Reporting Tool. Its main focus is reporting. That is what it is for. So, it has a lot more than the tool that is built to be a little of everything. That isn't to say that Access isn't good for reporting. It does quite a bit and it can do it well. But, as far as reporting goes, it is kind of like choosing a bicycle over a Limousine. They both will get you to where you are going, but the Limousine will get you there in much more comfort and faster.