Una funzione può avere come valore di ritorno un recordset?

Ovvero, se definisco:


Private Function Query(ssql As String) As DAO.Recordset
Dim rs As DAO.Recordset
Dim db As DAO.Database

Set db = Workspaces(0).OpenDatabase(PathDb)
Set rs = db.OpenRecordset(ssql)

Query = rs

rs.Close
db.Close

End Function


e poi la richiamo come:


Set rs = Query("SELECT * FROM tabella)"


Mi da:


Errore di compilazione. Utilizzo non valido di Property


La mia domanda perciò è: questo errore è dovuto ad un "limite" di VB& oppure a una mia errata implementazione?

Grazie,
alesssia