If all of your users have their own FE file, perhaps creating a temp query object using querydefs is a solution.
http://msdn.microsoft.com/en-us/libr...ffice.15).aspx
Here is an example of mine that I use to export data to Excel. It uses an existing Named Saved Query Object and creates a second, temp, query object based on the first and a subform's filter property. When finished, the temp object is deleted.
Code:
Dim strWhere As String
Dim strDate As String
strDate = Format(Now(), "yyyy_mm_dd_hh_ss")
Dim strDirectory As String
strDirectory = "C:\Test\" & strDate & ".xls"
If Me.sfrmContainer.Form.FilterOn = False Then
MsgBox "No filter is applied to your form."
Exit Sub
Else
strWhere = "Where " & Me.sfrmContainer.Form.Filter
End If
Me.SetFocus
Dim dbTrans As DAO.Database
Dim qdfTemp As DAO.QueryDef
Dim strSQL As String, strQDF As String
Set dbTrans = CurrentDb
strSQL = "SELECT qryEquipMaint.* FROM qryEquipMaint "
strSQL = strSQL & strWhere
strQDF = "_TempQuery_"
Set qdfTemp = dbTrans.CreateQueryDef(strQDF, strSQL)
'Use the temp query def
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, strQDF, strDirectory, True
Me.cmdSubThree.HyperlinkAddress = strDirectory
'Done with the temp query def
dbTrans.QueryDefs.Delete ("_TempQuery_")
qdfTemp.Close
Set qdfTemp = Nothing
dbTrans.Close
Set dbTrans = Nothing