Non utilizzare simboli a caso per circoscrivere il codice, ci sono i TAG specifici, documentati nel Forum... usa quelli...!!
Ti faccio una modifica che aiuta a snellire il funzionamento sulla parte di Filtro legata al campo ID, evitando la risoluzione implicita:
Private Sub Comando23_Click()
Dim stDocName As String
Dim Filtro As String
Filtro = "id_Paziente=" & Me!id_Paziente
Filtro = Filtro & " AND CampoData=Fix(Now())"
stDocName = "Referto"
DoCmd.OpenReport stDocName, acPreview, , Filtro
DoCmd.PrintOut
DoCmd.Close
End Sub
Chiaramente il campo che ho definito [CampoData] lo sostituirai con il nome del tuo campo specifico...
Non capisco perchè lo apri in Anteprima per poi forzarne la stampa e chiuderlo... non basta aprirlo in stampa diretta...?