Or, if your Access app is on different flavor OS's, and not sure where Crystal Reports (or any other associated app) is located on users PC, you could:
Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal Hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
Public Const SW_SHOWNORMAL = 1
Sub OpenFile(ByVal Filename As String, Optional Parms As Variant)
Dim Rc As Long
Dim Msg As String
If IsMissing(Parms) Then
Parms = ""
End If
Rc = ShellExecute(0, "Open", Filename, Parms, "", SW_SHOWNORMAL)
If Rc < 32 Then
Msg = "There was an error opening " & Filename & ". " & _
"Please check the filetype, and the application that should be used to open it."
MsgBox Msg, vbOKOnly + vbCritical, "Error"
End If
End Sub
Then, on your form:
Call OpenFile("C:\YourFile.doc"
(I'm sure I stole this from somewhere...)