Per sfruttare l'argomento Condizione WHERE di OpenReport occorre la sintassi adeguata. Non chiarisci se il filtro che vuoi passare è "relativamente semplice", in questo caso puoi utilizzare Condizione WHERE, quindi l'adeguata sintassi con apici singoli.
Invece io ho capito che tu, volta per volta, hai un filtro sempre diverso/variegato/complesso a seconda dello smanettamento precedente.
Ho fatto un test così, dalla maschera faccio un clic di pulsante e passo una stringa in OpenArgs:
Private Sub ReportEventi_Click()
DoCmd.OpenReport "Eventi", acViewPreview, , , , "FiltroMaschera"
End Sub
Su caricamento del report ho scritto:
Private Sub Report_Load()
If Me.OpenArgs = "FiltroMaschera" Then
Me.FilterOn = True
Me.Filter = Forms!Eventi.Filter
End If
End Sub
A me ha funzionato.