2008-09-30 4 views
3

Je tente d'enregistrer un fichier rtf à l'aide de FileDialog et souhaite filtrer à l'aide d'une clause where. C'est ce que j'ai:Comment filtrer un objet de rapport lors de l'enregistrement via FileDialog dans MS Access

Set dlgSave = FileDialog(msoFileDialogSaveAs) 
With dlgSave 
    .Title = "Provide the place to save this file" 
    .ButtonName = "Save As..." 
    .InitialFileName = Me.cmbPickAReportToPrint.Value & "-" & Format(Date, "mmddyy") & ".rtf" 
    .InitialView = msoFileDialogViewDetails 

    If .Show Then 
     DoCmd.OutputTo acOutputReport, Me.cmbPickAReportToPrint.Value, acFormatRTF, .SelectedItems(1) 
    End If 
End With 

Des idées sur la façon dont je pourrais ajouter la clause where sans changer autrement le rapport?

Répondre

3

J'ai trouvé que le moyen le plus simple de le faire sans toucher au code de rapport lui-même est d'ouvrir le rapport en mode aperçu avec le filtre appliqué, puis de sortir le rapport selon le format dont vous avez besoin.

If .Show Then 
    DoCmd.OpenReport Me.cmbPickAReportToPrint.Value, acViewPreview, , "fieldToFilterOn = 'value'" 
    DoCmd.OutputTo acOutputReport, Me.cmbPickAReportToPrint.Value, acFormatRTF, .SelectedItems(1) 
End If 
Questions connexes