Pergunta

Eu estou tentando salvar um arquivo RTF usando FileDialog e gostaria de filtro usando uma cláusula onde. Isto é o que eu tenho:

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

Alguma idéia de como eu poderia adicionar a cláusula WHERE sem mudar o relatório?

Foi útil?

Solução

Eu descobri que a maneira mais fácil de fazer isso sem tocar o próprio código de relatório é abrir o relatório no modo de visualização com o filtro aplicado, e então a saída do relatório para qualquer formato que você precisa.

If .Show Then
    DoCmd.OpenReport Me.cmbPickAReportToPrint.Value, acViewPreview, , "fieldToFilterOn = 'value'"
    DoCmd.OutputTo acOutputReport, Me.cmbPickAReportToPrint.Value, acFormatRTF, .SelectedItems(1)
End If
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top